掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
起動されている数を記録するには (ID:8636)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
自分のアプリがいくつ起動されているか、動的に取得できればいいのですね? SetProp() GetProp() というAPIで Application ウィンドウにしるしをつけておいて その数を数えます。Unit1 を以下のようにして試したところ、うまくいくようです。 function EnumWndProc(hWindow:HWND;lData:LPARAM):BOOL;stdcall; var pNum:PInteger; begin result := true; pNum := PInteger(lData); if GetProp(hWindow,'HogeHoge') = 123456 then pNum^ := pNum^+1; end; function EnumMyApp:integer; begin result := 0; EnumWindows(@EnumWndProc,LPARAM(@result)); end; procedure TForm1.Button1Click(Sender: TObject); begin Label1.Caption := IntToStr(EnumMyApp); end; initialization SetProp(Application.Handle,'HogeHoge',123456); finalization RemoveProp(Application.Handle,'HogeHoge'); end.
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.