🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.lang.visualbasic
Article #692

Re: 強制終了のイベントは拾えますか?

#692
From: norish
Date: Sat, 07 Feb 1998 00:00
36 lines
2134 bytes
hiroko kumagai wrote:
> 
> こんにちは。熊谷といいます。
> 
>  VisualBasic4.0で作成したexeプログラムで強制的に終了させられた事を
>  知る事はできるのでしょうか?
>  ご存じの方がいらっしゃいましたら、ご指導願います。
> 
>  やりたい事は、
>  1.強制終了させられた時に警告メッセージを表示させたい.
>  2.プログラムの終了処理を強制終了時も行いたい。
> 
>  動作環境はWindowsNT 4.0です。
>  「強制終了させられる」とは、たとえば、WindowsNTのタスクマネージャで
>  「プロセス終了」を行った場合等です。
> 
> #実は、タスクマネージャで「プロセス終了」させられると
>  「xxxxx.exe アプリケーションエラー」になってしまうんです。
>             ^^^^^^^^^^^^^^^^^^^^^^^
マルチスレッドで動いているからでしょう。
シングルスレッドなら通常はアプリケーションエラーは起こりません。

強制終了しようしてもアプリケーション側がそれを補足して何かできてしまう
のだったら、強制終了とは呼べないのでは?
それに強制終了はWIN32ではイベントではなく、強制的な停止だと思いま
す。

タスクマネージャで強制終了などさせないのが普通で、そんな事をされたら
異常終了や次回の起動不具合を引き起こしても仕方の無いことだと思います。
何しろ、それをされると使用中のオブジェクトの解放やフラグの設定など一切
行わずにいきなり実行メモリから消えてしまいますからね。
# タスクの終了なら補足可能だと思いますが。

強制終了されても大丈夫なようにするには、シングルスレッドにして、ヒープは
使わず、状態遷移を外部記憶に保存しないことでしょう。
Technical Details
Message-ID: <34DC2318.EF3973F6@writeme.com>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <6bbklb$ots@tusasim.tcs.ts.fujitsu.co.jp>

Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS
X-Google-Thread: 105c2e,5d36708db26c9724
X-Google-Attributes: gid105c2e,public
From: norish <norish@writeme.com>
Subject: Re: 強制終了のイベントは拾えますか?
Date: 1998/02/07
Message-ID: <34DC2318.EF3973F6@writeme.com>
X-Deja-AN: 322874598
Content-Transfer-Encoding: 7bit
References: <6bbklb$ots@tusasim.tcs.ts.fujitsu.co.jp>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-2022-jp
Organization: InfoWeb News Service
Newsgroups: fj.lang.visualbasic