4

プロジェクトをコンパイルする前に、プロジェクトに dcu ファイルを追加したいと考えています。これにOTAを使用しようとしています。IOTAProject には、ファイルを追加するオプション ( AddFile() ) がありますが、dcu を追加しようとすると許可されず、ファイルをプロジェクトの最初のファイルとして設定する必要があります。

次のようなものをシミュレートしたいと思います。

------------------ Original project
program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1};
etc...

------------------- Before compile I intercept it and set
program Project1;

uses
  MyDCU, //Add this
  Forms,
  Unit1 in 'Unit1.pas' {Form1};
etc...

------------------ After compile remove and it came back to 
program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1};
etc...

インターセプトをコンパイルする前後は問題ではありません。問題は、プロジェクトの最初のファイルとしての dcu ファイルのみです。

誰かが私を助けることができますか?Tks

4

1 に答える 1

1

OTA は (私が知る限り) CodeDom を提供しないため、これを行う唯一の方法は、BeforeCompile 通知をインターセプトし、プロジェクト ファイル (ファイル システムではなく IDE バージョン) を解析し、自分で uses 句に追加することです。 . それが完了したら、変更されたコンテンツを IDE バッファーにストリーム バックします。

于 2012-05-10T07:36:25.517 に答える