2011-01-11 113 views
4

我如何防止从VS用户呈现以下警告:如何防止Visual Studio警告缺少调试信息?

没有调试信息 为“MYEXE.EXE”调试信息不​​能被发现或不匹配。找不到或打开PDB文件。你想继续调试吗?

在我的情况下,我的产品的用户想要开发一个插件和他想调试它的(s)。在VC++项目中有适当的配置,以便当他按下F5时,我的应用程序将启动并加载插件。但是,VS抱怨缺少调试信息。虽然通常缺乏有效的调试信息是一个有效的问题,但在这种情况下,我不想为MyExe.exe提供.pdb文件(用户没有理由调试MyExe.exe应用程序)。有没有办法阻止VS搜索MyExe.exe的调试信息?

+0

检查“Project Propeties>配置属性>链接器>调试”下的“生成调试信息”中设置的内容。这应该被设置为'Yes(/ DEBUG)`以避免'没有调试信息调试''MyExe.exe'`信息 – Mahesh 2011-01-11 00:28:09

+0

从来没有尝试过,但如何给一个“存根”PDB?空文件或为“空”MyExe.exe生成的真实PDB,或类似的东西。 – Poni 2011-01-11 01:35:14

+0

@Mahesh:值设置为/ YES,但它需要部署.pdb文件,我想避免这种情况。 – 2011-01-11 08:35:53

回答

0

你不会说你的客户使用哪个版本的VS,但至少在VS 2005和VS 2010中,打开Tools-> Options-> Debugging-> General,有一个设置列表,scroll向下找到“警告如果没有启动符号(仅限本地)”设置并清除复选标记。

相信,这将完成你要找的东西,因为除非/直到调试器停在你的代码中,否则对话框不会弹出。如果它在客户的插件中停止(或击中断点),那么它应该能够找到符号,并且我认为它不会导致弹出窗口。

0

我不相信你可以关闭VS关于丢失或不匹配的PDB的消息,但是,你也许可以在构建时使用/PDBSTRIPPED option创建PDB - 这会给用户一个包含最少信息的.pdb(只是公共符号,基本上)。

相关问题