标准类别管理器(stdComponentCategoriesMgr) [英] Standard Category Manager (stdComponentCategoriesMgr)
问题描述
我以一种简单的方式检索所有已注册的COM组件(例如VB IDE中的引用/组件)时遇到了麻烦,因此我在项目中添加了"comcat.h"并使用了"stdComponentCategoriesMgr",我获得了已注册的CLSID,但是是类别明智的,并一一实现了所有CATID.
Hi,
I have stuck while retrieving all registered COM components (like references/components in VB IDE) in a single or easy way, So I added "comcat.h" in my project and using "stdComponentCategoriesMgr" I''m getting registered CLSID but it is category wise and implemented all CATID one by one.
EXTERN_C const CATID CATID_Insertable;
EXTERN_C const CATID CATID_Control;
EXTERN_C const CATID CATID_Programmable;
EXTERN_C const CATID CATID_IsShortcut;
EXTERN_C const CATID CATID_NeverShowExt;
EXTERN_C const CATID CATID_DocObject;
EXTERN_C const CATID CATID_Printable;
EXTERN_C const CATID CATID_RequiresDataPathHost;
EXTERN_C const CATID CATID_PersistsToMoniker;
EXTERN_C const CATID CATID_PersistsToStorage;
EXTERN_C const CATID CATID_PersistsToStreamInit;
EXTERN_C const CATID CATID_PersistsToStream;
EXTERN_C const CATID CATID_PersistsToMemory;
EXTERN_C const CATID CATID_PersistsToFile;
EXTERN_C const CATID CATID_PersistsToPropertyBag;
EXTERN_C const CATID CATID_InternetAware;
EXTERN_C const CATID CATID_DesignTimeUIActivatableControl;
但是,我并没有获得所有已注册的COM组件CLSID,特别是当我搜索系统中已经安装了多少个"msxml"版本时.
如何获取所有已注册的COM组件CLSID或遵循"stdComponentCategoriesMgr"的方法.
''
''
语言:本机VC ++
Yet I''m not getting all registered COM components CLSID, specially when I search for how many "msxml" versions has been installed in my system.
How do I get all registered COM components CLSID or beside the way about I followed "stdComponentCategoriesMgr".
''
''
Language : Native VC++
推荐答案
您可以手动注册组件.为此,请执行以下步骤..xml regitration示例
1.打开记事本
2.输入
You can manual register the components.For this follow below steps..Example for xml regitration
1. Open notepad
2. type
regsvr32 /s %SystemRoot%\system32\msxml.dll
regsvr32 /s %SystemRoot%\system32\msxml2.dll
regsvr32 /s %SystemRoot%\system32\msxml3.dll
regsvr32 /s %SystemRoot%\system32\msxml4.dll
regsvr32 /s %SystemRoot%\system32\msxml6.dll
3.将文件另存为"myname.bat"
4.双击文件
5.所有已注册的xmls
注册其他组件的方法相同
**不用双击批处理文件,而是可以使用system.run命令来自动化
**我使用/s进行静默注册-这样您就不会看到黑色的dos屏幕弹出窗口
谢谢
Sanjay
3. save the file as "myname.bat"
4. Double click file
5. All xmls registered
Same way you can register other components
** instead of double clicking the batch file you can use system.run command to automate
** i used /s to register it silently -- this way you will not see black dos screen popup
Thank You
Sanjay
这篇关于标准类别管理器(stdComponentCategoriesMgr)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!