2013-05-15 47 views
1

我的应用程序中有一些特定的功能,当我通过Visual Studio运行我的应用程序时,我只想让我看到这些功能。一旦我编译应用程序并分发独立的可执行文件,我不希望这些功能暴露。如何检查Visual Studio是否正在控制应用程序

是否有简单的方法来执行此检查?

+2

看到这个相关的问题http://stackoverflow.com/questions/101806/check-if-application-was-started-from-within-visual-studio?rq=1 – Amitd

+4

你有没有考虑将DEBUG属性添加到什么你不想暴露?这应该会使它在发布版本中生成时会被删除。 –

+0

您正在运行“开始调试”还是“无需调试即可开始”?您可以使用http://msdn.microsoft.com/zh-CN/library/system.diagnostics.debugger.isattached.aspx查看第一个案例 – kevingessner

回答

1

可你只需要使用#if DEBUG

#if DEBUG 
    // Code for debug builds only 
#endif 

然后你发布的发布版本和调试代码不会在那里。

您不必使用DEBUG,您可以使用自己的符号并创建已设置的构建配置,以及其他不需要的配置。

这样做的好处是,代码甚至不会在构建中,所以不可能有人使用反射器或其他代码来检查代码。

相关问题