如何使用C#中未注册的DLL?
-
03-10-2019 - |
题
我有一个自定义的DLL(未注册),需要通过C#访问。在不注册DLL的情况下,我该怎么做?
编辑:这是C ++ DLL。
解决方案
无注册COM Interop激活组件,而无需使用Windows注册表存储汇编信息。您没有在部署期间在计算机上注册组件,而是在设计时间创建WIN32风格的清单文件,其中包含有关绑定和激活的信息。这些清单文件而不是注册表键指导对象的激活。
使用无注册激活进行组件,而不是在部署期间注册它们提供两个优点:
- 当在计算机上安装多个版本时,您可以控制哪个DLL版本已激活。
- 最终用户可以使用Xcopy或FTP将您的应用程序复制到其计算机上的适当目录。然后可以从该目录运行该应用程序。
其他提示
我假设您想通过P/Invoke使用从此DLL导出的功能?如果是这样,您只需要将DLL复制到与EXE文件相同的文件夹。然后为您要使用的C ++ DLL中的功能编写C#声明。看 dllimportattribute.
不隶属于 StackOverflow