FireMonkeyフォームをタスクマネージャの「タスクの終了」で終了できない

解決


べなりあ  2013-07-12 18:57:02  No: 44826

べなりあです。またお世話になります。

タイトルの通りなのですが、HD FireMonkeyアプリケーションを作成後、
そのまま特に何も変更することなく実行し、
タスクマネージャのアプリケーションタブにある「タスクの終了」から
終了しようとすると、見た目は閉じるのですがプロセスが残ったままに
なり、Delphi側から見ても実行中のままになっています。

何かイベントが起こるのかなとも思ってフォームのonClose等、
イベントは全てチェックしたのですが「タスクの終了」により発生する
イベントが一切無く、最終手段で別スレッドからタイマーを回して、
フォームのVisible等をチェックすれば判断できるかとも思ったのですが、
Visibleの値もTrueのまま変わっていないという状態です。

なお、Alt+F4やフォームの×ボタンではもちろんonCloseも発生し、
正常に終了しています。
また、VCLフォームではこのような現象は発生せず、FireMonkeyを
使用している場合のみ起こるようです。

環境は
OS:Windows7 Professional 64bit
Delphi:XE4
ですが、環境特有のものでしょうか。

以上になりますが、何かお分かりの方いらっしゃいましたら、
お教え下さいますと幸いです。


DEKO  2013-07-12 22:45:50  No: 44827

[delphi-users:3182] XE4 FireMonkey プログラムの終了 (Delphi-freeml)
http://www.freeml.com/delphi-users/3182

FireMonkey の最小化問題と右クリック問題に対処する (.delphi maniacs)
http://delphimaniacs.blogspot.jp/2013/05/firemonkey.html

XE4 Update 1 (.delphi maniacs)
http://delphimaniacs.blogspot.jp/2013/06/xe4-update1.html


べなりあ  2013-07-13 00:15:26  No: 44828

DEKO様、ご返信ありがとうございます。

「タスクを終了」を選択した場合ばかりだと思っておりましたが、
タスクバーから選択した場合もそうなるのですね!
検索が不足しておりました。申し訳ございません。

まだ最小化付近に不具合があるようですが、
Update 1を導入しましたところ、終了に関する異常は解決いたしました。

素早いご回答ありがとうございました!


DEKO  2013-07-13 18:00:26  No: 44829

お持ちの Delphi XE4 が Starter Edition でなければ、
FMX.Platform.Win.pas を書き換える方法もあるようです。

[QC#115232 (Delphi Forum)]
http://ht-deko.minim.ne.jp/delphiforum/?vasthtmlaction=viewtopic&t=1172.0


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加