Windows Server 2008上的regsvr32问题

我正在尝试在Windows Server 2008标准盒子上注册一个基本的COM DLL

我运行regsvr32 capicom.dll ,它报告DllRegisterServer in capicom.dll succeeded 。 这与我们在Windows Server 2003上使用多年的过程是一样的。

不幸的是,当我尝试通过非常非常基本的Microsoft VBScript示例Set oStore = CreateObject("CAPICOM.Store")创build对象时,会抛出“ActiveX组件无法创build对象”错误。

思考也许这是这个DLL的问题,我尝试了一些其他的DLL我们使用相同的结果。 我尝试使用regsvr32在系统,system32和syswow64都具有相同的结果。 我不太了解每个人之间的差异,但认为这是值得一试的。

该dll被存储在d:\, 似乎有正确的权限(尽pipe这将是一个完全不同的错误)。

*更新:通过额外的testing,我们已经确定(通过依赖沃克)ieshims.dll和linkinfo.dll丢失。 他们在机器上,但报告为无法find。 capicom.dll和内部开发的dll都是如此。

感谢您可能有的任何帮助或想法!

    你可以尝试用Dependency Walker打开你的DLL。 如果你有capicom.dll依赖的任何缺less的DLL,Dependency Walker将帮助你find它们。

    在64位Windows操作系统中,有两个版本的Regsv32.exe文件:

     The 64 bits is %systemroot%\System32\regsvr32.exe. The 32 bits is %systemroot%\SysWoW64\regsvr32.exe. 

    尝试复制这两个可执行文件中的任何一个,以及要注册的OCX或DLL文件。 以pipe理员模式运行,或将兼容性选项卡中的可执行文件的属性更改为“以pipe理员身份运行此程序”。 注册ActiveX(ocx)或DLL或运行RegSvr32.exe nombre_dll nombre_activeX RegSvr32.exe。

    确保您以pipe理员身份在命令提示符下运行regsvr32。 此外,在那里运行可执行文件时,请尝试将DLL放在system32目录中。

    右键单击命令提示符图标,然后select“以pipe理员身份运行”,然后尝试注册您的DLL。 请记住,您拥有Windows上的pipe理员权限。

    卡帕

    这是我必须做的:

    1. 安装Capicom SDK

    2. 将capicom.dll复制到%SYSTEMROOT%\ syswow64文件夹中

    3. 寄存器DLL

    %systemroot%\syswow64\regsvr32.exe "%systemroot%\system32\capicom.dll"

    1. 运行camonitor.vbs脚本

    %systemroot%\syswow64\wscript camonitor.vbs /cacrlok /smtp /smtpserver:your_server /smptto:your_email