以前質問してからさほど進んでいないのですが・・・
DLL(データモジュールを使っています)なのですけど、
DLL内でグローバル変数を用意して、
Delphiアプリ(本当はVCアプリにしたいんですけどとりあえず)からDLL内にある関数をコールして
その関数の中でグローバル変数にクラスを割り当てています。
−−−DLL内−−−
var
DataModule : TDataModule;
//Delphiアプリに提供している関数
procedure CreateTest;
begin
if (DataModule = nil) then begin
DataModule:= TDataModule.Create(Application);
end;
end;
これで問題なく生成されて、やりたい事はできています。
(問題があればご指摘お願いします)
で、解放作業なのですが、自前で解放する必用はないのでしょうか?
Delphiアプリを終了させるとTDataModuleのDestroyに来るので必用ないとは
思うのですが、ちょっと心配で・・・。
> 解放作業なのですが、自前で解放する必用はないのでしょうか?
オーナが Application なので自前解放必要ないのでは。
解放の順序に問題がないのであればOKです。
いつのまにか解放してしまったオブジェクトを参照してしまうようなコードを書いている場合には、自前で解放する必要があります。
>オーナが Application なので自前解放必要ないのでは。
あー・・・そうかぁ、これだとアプリケーションが2つあることに
なっちゃうのか。(^^;
>解放の順序に問題がないのであればOKです。
そうですか、どうもありがとうございました!
また少し先に進めそうです。
ツイート | ![]() |