VBA C# DLL 无需注册
本文关键字:无需注册 DLL VBA | 更新日期: 2023-09-27 18:32:57
我做了一个C# .NET dll,我想从VBA运行它而不注册它。我在那里找到了解决方案,它运行良好,但仅当程序集是使用 Framework NET 3.5 或更早版本制作的。在 Framework 4.0 中,我收到错误"此程序集由比当前加载的运行时更新的运行时生成,无法加载"。有人可以帮我吗?
所以,我找到了解决方案。
默认情况下,Excel 使用 1.1 框架,如此处所述。如果你看一下Windows注册表,
HKEY_LOCAL_MACHINE'SOFTWARE'Microsoft'.NETFramework'Policy'AppPatch'YOUR_FRAMEWORK_VERSION'excel.exe'
您可以看到目标版本是v1.1.....因此,解决方案是创建一个 Excel.exe.config 文件,强制使用框架版本 4,如此处所述
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0.30319"/>
</startup>
</configuration>