我试图得到一些使用Windows DLL(不习惯他们)的做法。 我跟着这篇文章:
http://msdn.microsoft.com/en-us/library/ms235636(v=vs.80).aspx
给信。
但是,我收到这个错误:
如何使用C / java检测活动的应用程序?
释放在Python中通过ctypes分配的内存
基准testing库可用于C#
使用JNA通过Java恢复到Windows目录的inheritance
1> LINK:致命错误LNK1104:无法打开文件'.. debug math.lib'
我的项目是一个DLL项目,而不是一个库。 而且我的项目也没有创build库(整个解决scheme)。
任何人有什么想法是错的?
内核中的CLOCK_REALTIME纳秒精度支持
找出AF_UNIX + SOCK_SEQPACKET的最大消息大小
Linux真的在C ++代码中分配内存
与sigdelset()函数混淆
是否有可能在编译时间(当天)和date?
VS不会创建一个导入库,如果DLL实际上不导出任何东西。 要快速检查是否是你的情况,找到你的DLL,打开它与依赖沃克 ,看看是否有任何出口。
如果您发现导出缺少,请检查是否标记了要导出的任何内容:通过将类/函数声明为“__declspec(dllexport)”(当头文件包含在dll中时,dllimport包含在exe文件中)或extern“C” (.def)文件。
您的.dll项目可能正在创建一个导入.lib。 这简化了使用DLL。 一个import .lib是一个简单的库,它和你的dll具有相同的功能,但是它没有实现 – 当你使用它的时候,它会加载dll,然后把你所做的调用转发给dll。
或者,控制台项目可能会认为你有一个导入.lib – 但你不知道。
创建/使用你有一个dll的说明有点奇怪。 我不这样做(使用添加引用对话框)。 您可能需要查看您的项目设置,看看是否有任何对math.lib的引用 – 或者有关创建导入.lib的任何内容。
另外,检查.dll项目上的输出目录,看是否创建了math.lib(或任何.lib)。
这可能是由于您可能已经为DLL项目中的主项目添加的依赖关系之类的事情。
在Visual Studio 2008中,该设置可以在以下位置找到: Project Dependencies ,只需取消检查DLL项目即可解决问题。
此外,您可以验证:DLL的Lib的路径不再包含在主项目的“linker”命令行中: Configuration Properties > Linker > Command Line
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。