标准类别管理器(stdComponentCategoriesMgr) [英] Standard Category Manager (stdComponentCategoriesMgr)

查看:149
本文介绍了标准类别管理器(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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆