• ベストアンサー

windows2000の終了時の判定

windows2000でコンソールアプリケーション(perlで作成)を作成し、常駐プログラムとして稼働させる予定です。windowsの終了時にこのコンソールアプリケーションにある終了処理を行わせたいのですが、 このコンソールアプリケーションでwindows2000の終了を判定する方法がありますでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • nta
  • ベストアンサー率78% (1525/1942)
回答No.1

 コンソールアプリケーションでもWM_CLOSEのメッセージを受け取るイベントハンドラを記述すればいいと思いますが、Windows版のPerlではシグナルが機能しないようになっているため、イベントハンドラのような記述は不可能だと考えられます。どうしても実行するならばsyscallで別のプロセスにこのようなハンドラを立ち上げてプロセス間通信を使うことになります。ただ、別プロセスの場合には親、子のどちらのプロセスが先に終了するか保証がないため、実装には困難が予想されます。Perl以外でコンソールアプリケーションを作成するわけにはいきませんか。

参考URL:
http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/Q178/8/93.asp&NoWebCo
tatsu99
質問者

お礼

回答ありがとうございました。Perlを選択したのは、ログファイル(=テキストファイル)の監視及び取得の為にperlが最適であるという判断からです。回答から判断しますと、perlでは無理なようですので、終了判定を行わないで済むような方法に切り替えたいと思います。

関連するQ&A