我有一个项目依赖于我的解决方案上的其他一些项目。例如,假设我的主项目是m并且它生成m.exe
这个项目依赖于一些其他项目说a.dll,b.dll,c.dll。
我的问题是:
当我构建m.exe时,创建了a.dll,b.dll和c.dll,输出被放置在我的电脑上的某个目录中,但这些dll不会被复制到m.exe的输出目录中,因此当我想调试m.exe时,找不到它们。
如果我将它们复制到输出目录(调试目录),应用程序就会运行,但我无法调试到a.dll,b.dll和c.dll。
如何设置我的MSVC以便我可以编译和调试这些dll?
我正在使用Visual Studio 2012。
答案 0 :(得分:0)
在每个项目的项目设置(配置设置 - >常规)中,您可以设置输出目录。将每个项目的每个配置/平台更改为例如$(SolutionDir)$(Platform)\$(Configuration)\
(或其他任何解析为每个项目的相同位置的内容)。
替代方法是添加构建后步骤以复制via命令,或更改DLL解析机制并使用延迟加载代码“手动”解析引用的DLL。