- 使用 Visual Studio 2005 和 Visual C++ 创建简单的 C DLL 有何不同。我看到在工作室下创建它时还创建了一个 list ,并且由于使用并排文件夹(当从 C# 应用程序调用该 dll 时),我在另一台机器上部署时遇到了一些问题”
- 调用 dll 的机制是如何工作的?
谢谢
最佳答案
是的,如果您使用/MD(默认设置)编译 DLL 代码,那么您必须 deploy the CRT libraries到目标机器。如果这只是一个没有任何其他依赖项的独立 DLL,那么使用静态 CRT 选项进行编译是有意义的,这样您就不必部署库。右键单击您的 DLL 项目,Properties,C/C++,Code Generation,Runtime Library =/MTd 用于 Debug 配置。重复发布配置,现在使用/MT。
Google“P/Invoke marshaling”以了解有关如何从托管程序调用非托管代码的更多信息。
关于在 visual studio 2005 和 visual C++ 6.0 中编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2110943/