我在 Windows Server 2008 r2标准版x64 上运行的vb6应用程序运行时错误429:ActiveX组件无法创建对象 - 在Virtual PC上进行全新安装。< / p>
我可以在Windows 7,10和Windows Server 2003上运行它,使用相同的步骤没有问题
我使用了一个名为“listdlls.exe”的工具,我比较了应用程序在Windows 7和Windows Server 2008 r2上加载的DLL和OCX文件 - 没有丢失的文件。这10个文件只有不同的版本:
ntdll.dll on Windows 7 (6.1.7601.17514) and on Windows Server 2008 r2 (6.1.7601.23572)
kernelbase.dll on Windows 7 (6.1.7601.17514) and on Windows Server 2008 r2 (6.1.7601.23572)
advapi32.dll on Windows 7 (6.1.7601.17514) and on Windows Server 2008 r2 (6.1.7601.23572)
ole32.dll on Windows 7 (6.1.7601.17514) and on Windows Server 2008 r2 (6.1.7601.23392)
msctf.dll on Windows 7 (6.1.7600.16385) and on Windows Server 2008 r2 (6.1.7601.23572)
oleaut32.dll on Windows 7 (6.1.7601.17514) and on Windows Server 2008 r2 (6.1.7601.23569)
cryptsp.dll on Windows 7 (6.1.7600.16385) and on Windows Server 2008 r2 (6.1.7601.23471)
crypt32.dll on Windows 7 (6.1.7601.17514) and on Windows Server 2008 r2 (6.1.7601.23566)
asycfilt.dll on Windows 7 (6.1.7601.17514) and on Windows Server 2008 r2 (6.1.7601.23569)
olepro32.dll on Windows 7 (6.1.7601.17514) and on Windows Server 2008 r2 (6.1.7601.23452)
该应用使用的所有其他文件的版本和大小相同!所以没有其他差异。
该程序在“帐户设置为管理员”下以管理员身份运行。
我将DEP(数据执行保护)设置为0
C:\ Windows \ SysWOW64&gt; wmic OS获取DataExecutionPrevention_SupportPolicy
DataExecutionPrevention_SupportPolicy
0
我也禁用了UAC(用户帐户控制)
有什么想法吗?版本差异是否足以导致这种情况,或者是否还有其他我缺失的东西?
干杯!
答案 0 :(得分:0)
请使用ProcessMonitor
以确定您的Windows Server 2008 r2标准版x64上的VB6程序找不到哪个COM组件。
https://technet.microsoft.com/en-gb/sysinternals/processmonitor.aspx