我的代码中有几个到目前为止运行良好的代码:
#If DEBUG Then
... some code here
#End If
现在,我注意到,最近,“#If DEBUG then ... #End If”中的代码
也在“释放模式”下执行。
这很奇怪,以前没有发生过。可能发生了什么
#If DEBUG 现在被忽略(它们在 IDE 中的调试或最终可执行文件中都被忽略)?
我已经应用了清理、重建等:没有运气。感谢您的任何提示和帮助。
-Pam
首先,确保您了解运行代码的方式与构建代码的方式之间的区别。太多人将“在调试器中启动”等同于“调试版本”,将“不在调试器中启动”等同于“发布版本”。它们是完全正交的 - 您可以在调试器中启动发布版本(通常可用信息较少),也可以不在调试器中启动调试版本。如果您已经意识到这一点,我们深表歉意。
现在,假设你真的have将您正在构建的项目配置更改为发布,您需要检查该特定配置的项目属性。我不知道它在 VB 中是什么样子,但在 C# 中,在项目属性的构建选项卡中,将会有一个已定义符号的列表 -that是什么影响是否#if DEBUG
代码是否已构建。也许有人已将项目配置从调试复制到发布?
编辑:一种检查方法build时间是:
#if DEBUG
#error This shouldn't happen
#endif
在发布版本中,should构建没有错误。在调试时,不会。
编辑:另一个选择是你的整体solution现在配置指的是错误的project配置类型。我不记得确切的菜单名称,但如果您查看配置管理器的项目,您应该能够调出一个网格映射“项目”和“解决方案配置”到要构建的项目配置。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)