组件的注册有两种情况:
1、是com类型的dll组件的注册:
该种注册方式主要是通过windows/system32目录下的regsvr32.exe程序来完成的。
也可以通过cmd命令行敲入regsvr32的方式进行注册。
2、另一种是.net组件的注册:
该中注册方式主要是通过Windows/Microsoft.Net/Framework目录下某个版本的.net框架下的的RegAsm.exe程序来完成的。
当然也同样可以通过在VS开发工具提供的Visual Studio Command Prompt 命令行工具中敲入regasm的方式来进行注册。
备注:
如果是在windows 7等有UAC权限控制的系统中进行注册的时候,使用命令行方式的时候,命令行程序打开的时候要以管理员身份打开,要不然基本是没办法注册成功的。
基本操作程序如下:
开始--所有程序--附件--命令行--右键“以管理员身份运行”进入cmd方式,然后在cmd方式下进入要注册dll所在文件夹中,再次使用regsvr32 /s xx.dll,就可以了。
同时如果在程序中出现“检索 COM 类工厂中 CLSID 为 { } 的组件时失败,原因是出现以下错误: 80040154”的错误,那么应该是COM组件没有在当前机器上面注册的关系。通过第一种注册方式把COM组件在本机注册下基本就可以解决。如果继续报该错误,请检查下你的操作系统是不是64位的,因为很多类库是基于32位的操作系统开发的。在64位系统上面会报错。
而如果你是在开发的时候,代码里面抱的错误,那么你很幸运哈。你可以通过把你当前的程序编译成32的来解决这个问题。具体操作如下:
引用COM组件的项目--右键、属性--生成--常规--目标平台--x86。重新编译,问题解决。