我正在尝试为我的旧项目制作一个COM。 COM已成功构建,但当我尝试使用COM调用某些函数时,会出现此错误:
混合模式程序集是针对版本'v2.0.50727'构建的 运行时无法在没有附加的情况下加载到4.0运行时 配置信息。
旧项目在.NET 4.0中有一些部分,在.NET 3.5中有一些部分。虽然我试图在.NET 4.0中创建所有部分,但我使用的某些第三方DLL无法重建为更高的框架。
我搜索过这个问题,所有人都告诉我将app.config或web.config添加到应用程序:
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku='.NETFramework,Version=v4.0' />
<requiredRuntime version="v4.0.30319" />
</startup>
这将在表单或服务器调用时起作用。但我的COM可能会被vbs称为:
Dim obj
Set obj = CreateObject("ClassLib.Class1")
msgbox obj.add(3,5)
在这种情况下,我无法将该配置文件添加到vb文件中。这有什么解决方案吗?