C# VB6错误:运行时错误'-2146232576(80131700)和#x27;自动化误差

C# VB6错误:运行时错误'-2146232576(80131700)和#x27;自动化误差,c#,com,vb6,windows-xp,vb6-migration,C#,Com,Vb6,Windows Xp,Vb6 Migration,我知道这个问题在网络和stackoverflow上几乎没有答案;但它是围绕微软Word和Excel的,我也不使用它们 我有一个C#ComVisible dll,它添加了两个数字,我是从VB6应用程序调用它的。我使用过接口、生成的guid等,它在安装了.NETFramework4.5的Windows7环境中工作得非常好。 注意:我的C#dll被标记为目标.NET3.5及以上版本 我在安装了.NET4(4个客户端配置文件和4个扩展)的XP上也做了同样的事情。 我已经使用“regasm/codebas

我知道这个问题在网络和stackoverflow上几乎没有答案;但它是围绕微软Word和Excel的,我也不使用它们

我有一个C#ComVisible dll,它添加了两个数字,我是从VB6应用程序调用它的。我使用过接口、生成的guid等,它在安装了.NETFramework4.5的Windows7环境中工作得非常好。 注意:我的C#dll被标记为目标.NET3.5及以上版本

我在安装了.NET4(4个客户端配置文件和4个扩展)的XP上也做了同样的事情。 我已经使用“regasm/codebase”注册了dll。每当我在XP机器中创建dll的对象时,它都会抛出一个错误: 运行时错误“-2146232576(80131700)”自动化错误

在Windows 7上运行正常,但在XP上运行不正常的配置中可能有什么错误

提前感谢您的评论。

我解决了这个问题

出于某些原因,仅在XP上安装.NET4.0是不够的。 我也需要安装.NET3.5,这样才能正常工作。
谢谢。

我已尝试专门为x86环境构建dll,但仍然无法运行。0x80131700=CLR\u E\u SHIM\u RUNTIMELOAD=“未能加载运行时”。您使用了错误版本的Regasm.exe。很难做到,不要只是把它从一台机器复制到另一台机器上。使用C:\Windows\Microsoft.NET\Framework\v4.0.30319\Regasm.exe确保实际使用.NET 4