
No.3ベストアンサー
- 回答日時:
> プロセスを強制終了した場合もイベントは拾う事ができるのでしょうか?
プロセスの強制終了は、正常にアプリケーションを終了したわけではないので、
走行しませんし、そのような状態を捕捉するイベントもありません。
.NET Framework(CLR)のエラーが発生して異常終了したからといって、後続の処理が
走行しないのと一緒です。
No.2
- 回答日時:
VB.NET 2.0以上に限るけど(VS2002やVS2003は不可、VS2005、2008、2010、2012のみ)、終了しつつある時にそれが分かればいいのであればMy.Shutdownイベントに応答すればよかよ。
プロジェクトを右クリックしてプロパティ→アプリケーションタブのアプリケーションイベントの表示(I)→ApplicationEvents.vbがプロジェクト直下にできる→(MyApplicationイベント)のShutdownをプルダウンから選ぶ→MyApplication_Shutdown() Handles Me.Shutdownが出来上がるのでそこにプログラムを書く→バッチグー。ちなみにこのイベントは「もう終わる事が決定した後」で呼び出されるので、このイベントで終了を回避(終了しますかとかYes/Noダイアログを出して、Noを選んだら終了しない)という事はできない。
同じくプロジェクトのプロパティでアプリケーションフレームワークを無効にして、プログラムのエントリポイントをSub Mainにすると全部自分で制御できるようになりますが上級者向けなので興味があれば調べてみてください。
No.1
- 回答日時:
んと、スタートアップオブジェクトを変えればいいのでは。
Public Class Class1
' これがエントリーポイント
<STAThread> _
Public Shared Sub Main()
Application.EnableVisualStyles()
Application.SetCompatibleTextRenderingDefault(False)
Application.Run(New Form1())
' ここから、Form1が終了したあとの処理
Console.WriteLine("プロセス終了前の処理")
End Sub
End Class

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プロセスIDの取得方法について
-
vb.netでEXCEL起動がうまくでき...
-
アプリケーションが終了するま...
-
C++のプログラムをバックグラウ...
-
タスクマネージャーのプロセス...
-
AppActivate関数について
-
他のEXEが起動しているかの確認
-
Process.Startの戻り値を後で取得
-
forkについて
-
他のアプリケーションの起動と...
-
C言語 特定のプロセスの終了を...
-
実行中のプログラムIDが取得...
-
Linuxのchdir(カレントディレク...
-
C#でのbatファイル実行結果取得
-
非表示になったエクセルは?
-
Linuxでのスレッド間メッセージ...
-
WMIでのプロセスの起動・終了監...
-
UNIX関数?(popen)...
-
windowsのプロセスIDやスレッド...
-
〔Windowsタスクマネージャ〕メ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
タスクマネージャーのプロセス...
-
バックグラウンドのプロセスの...
-
プロセスのアタッチ・デタッチ...
-
OSPFでプロセスを分ける意義に...
-
ADOでアクセスのレコードに...
-
非表示になったエクセルは?
-
Process.Startの戻り値を後で取得
-
vb.netでEXCEL起動がうまくでき...
-
C#でのbatファイル実行結果取得
-
プロセスIDの取得方法について
-
Linuxでのスレッド間メッセージ...
-
Visual C++からpingを実行して...
-
SendMessageが失敗するときがある
-
IISがフリーズ
-
スティーブ・ジョブズはプログ...
-
c言語でプロセスIDを調べたい
-
特定ユーザーのプロセス情報を...
-
怪しいプロセス教えてください。
-
セマフォとmutexの違いは?
-
Windowsでのfork方法
おすすめ情報