我在一台机器上有一个DLL项目,然后用新安装的VS2008将它复制到另一台机器上。该项目生成,但我无法调试它。Dependecy显示,我的DLL看到msvcr90d.dll,但msvcp90d.dll 没有看到相同的DLL。但是,如果我在单独的窗口中打开msvcp90d.dll,那么msvcr90d.dll 对msvcp90d.dll是可见的。这显然是一些SxS问题,但我不知道如何解决。我尝试了几个建议的修复方法,在googling中找到了:
禁用增量链接,删除building
它们都不管用。在调试和发行版构建中,情况都是一样的。帮助!
发布于 2010-08-31 10:57:19
我把最新的项目复制到了解决这个问题的电脑上,结果发现根本没有问题。依赖沃克仍然显示相同的黄色图标,但最新的项目可以调试只是很好。问题很明显是在我的代码中,可能是C#声明和实际DLL实现之间的函数签名不匹配。
发布于 2010-08-11 20:20:17
您安装了VS 2008的服务包了吗?
你确定这就是你不能调试的原因吗?dll是否使用c++库(msvcp90d.dll)中依赖于C库(msvcr90d.dll)的任何内容?如果什么都不需要,它就不会链接非相关代码。
在链接器设置中是否显式忽略了此库?
https://stackoverflow.com/questions/3400025
复制相似问题