1

2つの異なるプログラムで使用したいユニットがあります。シンボルを定義したい違いを伝えるために、ユニットでそれを確認します。

私が持っているプロジェクトのDPRでは;

program Project1;

{$Define MYDEF}  

uses
  Forms,
  ...

そして私のForm1ファイルには

procedure TForm1.FormCreate(Sender: TObject);
begin
 {$IfDef MYDEF}
   ShowMessage('boo');
 {$EndIf}
end;

しかし、私はブーイングを見ることができません!定義は特定の範囲に限定されていますか?

4

3 に答える 3

3

Delphi2007および{$IFDEF...}ディレクティブは、条件付きを表示できません

プロジェクトの下で、「条件付き定義」に定義を追加します

于 2009-10-05T11:11:01.703 に答える
2

定義はファイルに対してローカルです。それらをグローバルにしたい場合は、それらをプロジェクトオプションに追加します。

于 2009-10-05T11:11:05.290 に答える
1

別の解決策は、includefileを用意し、それをすべてのユニットと.dprに含めることです。

このソリューションは、デルファイバージョンに依存しません。

定義がDelphiのバージョン管理に関連している場合は、定義に体系的な構造を設定するためのヒントについて、http: //www.stack.nl/~marcov/porting.pdfを確認してください。

于 2009-10-05T12:00:47.063 に答える