sum*_*ame 1 delphi delphi-2010
我正在为Delphi 2010中的大型应用程序开发一个新模块.
我在两个项目的项目组中组织了我的源代码,一个用于构建完整的应用程序,另一个用于启动我的测试套件(与主应用程序共享一些源代码).
在单元的初始化期间,我需要采取不同的行动,这取决于我正在编译的两个中的哪一个.
unit MySharedUnit
var
flag : TFlagValues;
implementation
[...]
initialization
if IsTestProject then
flag := TestValue
else
flag := ReleaseValue;
end.
Run Code Online (Sandbox Code Playgroud)
目前,我使用项目定义的环境变量(仅在一个项目的选项中定义)来决定活动项目.
我的问题是:
是否有另外一种或更优雅的方法可以做到这一点,比如内置的#define'd值,当测试应用程序应该在Release模式下运行时,不需要我手动修改项目选项?
Delphi知道条件编译,如:
initialization
{$IFDEF FULLVERSION}
flag := ReleaseValue;
{$ELSE}
flag := TestValue
{$ENDIF}
end.
Run Code Online (Sandbox Code Playgroud)
如果您愿意,可以在项目中设置FULLVERSION(或任何其他名称).
使用Delphi 2010,您可以为Debug和Release版本提供一组不同的选项.
| 归档时间: |
|
| 查看次数: |
342 次 |
| 最近记录: |