1

PascalScript エンジンをソフトウェアに組み込みました。私のユーザーは、このエンジン用の一連のスクリプト全体を作成したいと考えており、includeまたはコマンドによって他のスクリプトを含めることができるかどうかを知りたusesがっています。

彼がやりたいことは、あらゆる種類の定数/変数を保持する 1 つのスクリプトと、ロジックを実行する別のスクリプトを作成することです。最終的に、彼は定数をロジック スクリプトに含めたいと考えています。

これで十分に理解できたと思います。

4

3 に答える 3

3

PascalScript コンパイラの UsePreprocessor プロパティを true に設定する必要があります。その場合は、次のプリプロセッサ コマンドを使用できます。

{$I ファイル名.txt}

また、ネットで見つけた次の例のようなものを使用して、コンパイラの OnNeedFile イベントを実装する必要があります。

function TForm1.ceNeedFile(Sender: TObject; const OrginFileName: String;
var FileName, Output: String): Boolean;
var
  path: string;
  f: TFileStream;
begin
  Path := ExtractFilePath(ParamStr(0)) + FileName;
  try
    F := TFileStream.Create(Path, fmOpenRead or fmShareDenyWrite);
  except
    Result := false;
    exit;
  end;
  try
    SetLength(Output, f.Size);
    f.Read(Output[1], Length(Output));
  finally
    f.Free;
  end;
  Result := True;
end;
于 2011-05-26T14:44:05.550 に答える
0

(質問のタイトルを修正してください)

完全にはわかりませんが、Pascalscriptには「ファイル」の概念がありません。インタープリターに渡す前に両方の部分を単純に連結するか、小さなプリプロセッサーで {$I } インクルード ステートメントを検索し、コードを検索して挿入することができます。

于 2011-05-26T08:26:47.233 に答える
0

条件定義をPS_USESSUPPORT and に設定した場合、OnFindUnknownFileイベントでは、pas ファイルの内容を出力文字列にロードする必要があります。

次に、「Uses XYZ;」を使用できます。

于 2021-03-16T06:06:00.633 に答える