program scvx; { 2012-03-01:Ver 0.0.10.11 ・http://kerokero.org/wp/archives/154  によるとVista以降ではSetThreadExecutionState(ES_DISPLAY_REQUIRED)だけではスク  リーンセーバーの抑止にはならないらしいのでmouse_event APIも併用してみた。  が、Vistaや7の環境がないので効果があるのかどうか解らない。 2011-06-22:Ver 0.0.9.11 ・メモリーリークしていた不具合を修正。 ・実行中のプログラムでファイル名を取得できないものがあったのでリストに追加しない  ように仕様変更。 2011-05-10:Ver 0.0.8.11 ・TScreenのMonitorプロパティがモニター情報の変更に追随しない不具合を回避。 2011-02-10:Ver 0.0.7.11 ・起動中にシステムを終了させたりログオフさせたりした場合設定を保存していなかった  不具合を修正。 2011-01-21:Ver 0.0.6.11 ・DLLプリロード攻撃対策。 2009-09-27:Ver 0.0.5.11 ・マウス下のプログラムを取得のボタンを「取得」から「キャンセル」に変更 2009-03-30:Ver 0.0.4.9 ・ウィンドウリストとアプリケーションリストを右クリックしたときそれぞれのウィンド  ウをアクティブにするように変更。 2009-03-08:Ver 0.0.3.9 ・移動できなかったアホみたいな不具合を修正。 ・フォームをツールスタイルから標準のものに変更。 ・最小化ボタン、終了ボタンを有効に変更。  「閉じる」ボタンを非表示に変更。  「マウス下のウィンドウを追加」のダイアログが表示されているときにタスクトレイア  イコンを左クリックするとダイアログの手前に本体を表示してしまう不具合を修正。 2009-02-09:Ver 0.0.2.9 ・スクリーンセーバー、モニター電源オフが50秒間隔以下で起きたときに対応。  ただしVistaではスクリーンセーバーのキャンセルをできなくする設定も可能なようで、  その場合は抑止できない。 2009-02-04:Ver 0.0.1.9 ・ウィンドウリストからのドラッグアンドドロップに対応。 ・「マウス下のプログラムを追加」で追加後リストの表示が実行状態になっていない不具  合を修正。 ・「マウス下のプログラムを追加」で入力フォーカスがない場合でも取得可能とした。 ・登録済みの複数のファイルを登録しようとした場合、一つ一つのふぁいるでエラーメッ  セージを出していたのを一度で済ますようにした。 ・リストのタイトルを表示。 ・バージョン情報の「著作権」を削除。 ・「エクスプローラー」「プロパティ」「実行」機能追加。 ・メニューを三つに分割整理。 2009-02-03:scv.exeを元に作成。 } uses my_safedll, HeapChecker, Forms, Windows, myApp, // myControl, main in 'main.pas' {App_TOOLScrBlockEx}, winadd in 'winadd.pas' {App_TOOLScrBlockAddFromWindow}; {$R *.res} begin HeapChecker.OutputClassName := True; HeapChecker.DumpLeakMemory := True; if (gfnbAppDuplicate('dGD[dExa12_', 'TApp_TOOLScrBlockEx', 'scvx')) then begin Exit; end; Application.Initialize; //http://www.blackcatlab.com/article.php/ProgramingFAQ_del0045 SetWindowLong(Application.Handle, GWL_EXSTYLE, GetWindowLong(Application.Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW); Application.Title := 'scvx'; Application.CreateForm(TApp_TOOLScrBlockEx, App_TOOLScrBlockEx); Application.Run; end.