次のように、DLL でいくつかの関数を作成しました。
procedure DoThis(A: PChar): Boolean; stdcall;
begin
f := TFileStreamCreate(A, fmCreate);
f.read()
f.free;
end;
次に、2 つの名前でエクスポートしました。
export
DoThis,
DoThis name 'DoThat';
ほとんどの場合、この「名前変更」は機能します。しかし、少なくとも 1 つのケースでは、名前が変更された関数 "DoThat" は、実際のファイルからではなく、void からデータを読み取ります。同じファイルで DoThis を呼び出すと、うまく機能します。FastMM4 のおかげですべてのメモリ リークを削除しました (コードを通常のコンソール アプリに変換しました)。
質問は次のとおりです。
この「名前の変更」は合法的な行為ではありませんか?
合法である場合、コンソール アプリに変更せずに FastMM4 で DLL をデバッグできますか?