• ベストアンサー

タスクマネージャの「プロセスの終了」を禁止

VC++6.0で作成したソフトウェアを、タスクマネージャの「プロセスの終了」で終了させられなくする方法を教えて下さい。 「Users]グループで終了出来なければいいので、そのソフトウェアの権限をあげればいいのかな?とは思うのですが・・・。 出来れば、InstallShieldでそういう設定をしたいです。 (そのソフトは、インストール後は、自動起動します。)

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

  • ベストアンサー
  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.4

★なるほどね。 ・単純な方法でよいならメッセージ処理をちょっとだけ細工するのはどうですか。  アイディアとして、その終了したくないソフトウェアに  (1)WM_QUIT  (2)WM_DESTORY  (3)WM_CLOSE  を処理します。ただし、中身は空っぽにします。 ・未確認ですが、多分これで『タスクマネージャ』の『プロセスの終了』ボタンより  強制終了を禁止できると思います。ただし、Windows が終了したときに正常に終了  させるために WM_QUERYENDSESSION か、WM_ENDSESSION メッセージ内でウインドウを  破棄する処理などの終了処理を記述します。お勧めは WM_ENDSESSION メッセージ内に  WM_QUIT、WM_DESTORY、WM_CLOSE で記述している終了処理を記述するのです。 ・その他、タスクマネージャから『プロセスの終了』ボタンが押されたとき、メッセージの  WM_QUIT、WM_DESTORY、WM_CLOSE で強制終了できません。というメッセージを出しておくとか。  あとタスクマネージャの『シャットダウン』タブから『電源を切る』とか『再起動』などで  正常にプログラムが終了するかなどを試して下さい。 ・メッセージの資料として下の『参考URL』と『参考資料』を張っておきます。どうぞ。 ・以上。参考アイディアでした。 参考資料: http://www.winapi-database.com/Message/WM/WM_ENDSESSION.html→『WM_ENDSESSION』 http://www.winapi-database.com/Message/WM/WM_QUERYENDSESSION.html→『WM_QUERYENDSESSION』

参考URL:
http://www.winapi-database.com/Message/WM/index.html

その他の回答 (4)

  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.5

★追記。 ・タスクマネージャを使用禁止にする方法もあります。  レジストリにタスクマネージャの起動を禁止にすればもっと楽かもしれません。  次の過去質問をどうぞ。 ・http://oshiete1.goo.ne.jp/qa2753582.html→『Ctrl+Alt+Del禁止方法について』 ・http://oshiete1.goo.ne.jp/qa2752619.html→『タスクマネージャが使えません』  上記のレジストリの値『DisableTaskMgr』を DWORD 値で作成すれば良い。 ・以上。参考に!

参考URL:
http://www.kt.rim.or.jp/~yuta/prog/win32/Registry/index.html
taka077
質問者

お礼

色々と回答を頂き、ありがとうございます。タスクマネージャの使用禁止ですが、学校の方針なのか分かりませんが、使用できないといけないようで...。(タスクバー上での右クリックメニューは出ないようにしてあるのですが、Ctrl+Alt+Delete時の項目は、ログオフのみディゼーブルされているのです。) 今さらですが、OSはXPです。 これまで複数の開発者がいじってるので、InstallShieldでそういう設定が出来ないかと思いまして。

  • PED02744
  • ベストアンサー率40% (157/390)
回答No.3

ユーザグループでだけ、終了できなければいいのなら、サービスにしてはいかが? Userグループ(制限ユーザ)は、サービスの開始・停止ができませんから。

  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.2

★補足要求します。 ・なぜ、タスクマネージャの『プロセスの終了』ボタンで終了禁止にしたいのですか?  そのソフトウェアは、常駐プログラムで強制終了されると動作に重大な支障が  出たりするのですか?そういう理由で起動中は『強制終了を禁止』にしたいのですか。 ・ちょっとだけお尋ねします。

taka077
質問者

補足

学校で使用しているシステムで、スレーブ側のソフトなのですが、学生が勝手に終了してるのです。学生は、Users権限しか与えていないので、システム権限のソフトに出来ればいいのですが。 また、そのソフトは小さいウインドウながら、学生にボタンをクリックさせる事もありまして...。

回答No.1

それが簡単にできるようだと甚だしく危険なアプリケーションが蔓延します。 たとえ知ってても良識あるプログラマなら絶対に公開しないでしょうね。

関連するQ&A

  • タスクマネージャからプロセスを終了させたい

    MediaServerというソフトを使っていますが、タスクマネージャから終了させることができません。 プロセスの終了、プロセスツリーの終了を選んでも変化ありません。 再起動させると終了させられる時もありますが、時間がかかるので他のソフトを使って強制終了させられたり、他の手順で終了させられないかと思い質問させていただきました。 よろしくお願いします。

  • ウィンドウを閉じてもタスクマネージャではプロセスが終了しない?

    メモリ使用量監視ソフトをインストールして気がついたのですが、 アプリを終了させたはずなのにメモリが解放されていませんでした。 不思議に思いタスクマネージャを立ち上げてプロセスを確認すると、 まだ起動した状態になっており、再度同じアプリを立ち上げると、 同じプロセスが多重起動してしまいました。 それからタスクマネージャを起動したまま色んなソフトを起動してみたのですが、 この現象が起きるソフトと起きないソフトがありました。 ■この現象が起きるプログラム ・Adobe CS3 シリーズ ・Filemaker Pro 8 ・IE 7 ・Google Chrome ・タスクマネージャ など ■この現象が起きないプログラム ・ad-ware2008 ・Windows Live Mail ・FireFox しばらくテストしていて気がついたのですが、 ウィンドウを閉じる「×」を押した場合のみプロセスが残り、 alt+F4で終了させた場合は正常に終了できるようで、 タスクマネージャにはプロセスが残りませんでした。 以下質問なのですが、 1、これは正常な動作なのでしょうか? 2、正常では無い場合、何か解決方法があるのでしょうか? ご教授のほどお願いいたします。

  • タスクマネージャで終了できないプロセス

    Windows2000/XPや2000/2003serverで アプリケーションが応答無しで以上終了した後などに ウィンドウは消えてもプロセスがタスクマネージャに残ることがあり、 タスクマネージャから「プロセスの終了」と選択しても 「アクセスが拒否されました」と止められないことがあります。 OSを再起動する以外でこれを止める方法ってありませんか? CUIでできればうれしいのですが、なければGUIでも。 よろしくお願いします。

  • タスクマネージャでの終了について

    アプリケーションソフトを、タスクマネージャで終了させると何か問題はありますでしょうか? というのは、先日こちらで質問させていただいたことの経過なんですが、常駐ソフトをショートカットキーで終了させたいというものです。 http://oshiete1.goo.ne.jp/qa4530593.html この質問時点では思いつかなかったのですが、タスクマネージャを使えば可能かと思い試してみました。 キー操作記憶型マクロ作成ソフトで、タスクマネージャを起動し目的のプロセスを選び終了、という流れのマクロのファイルにして、それをショートカットキーとして登録したところ、うまく目的のソフトを終了させることが出来ました。 ただ、正常に起動しているアプリケーションソフトをタスクマネージャで終了させると何か問題は無いかと心配です。 タスクマネージャで終了させるのは、アプリケーションが応答無しになったときやむを得ず、というイメージがあるので・・・ コマンド文?とかが書ければもっと真っ当な方法があるんでしょうけど、そういうのは全く分かりません。 こういうことをすると良くないものでしょうか。やめておいたほうがいいですか? どうぞアドバイスをお願いいたします。

  • タスクマネージャー  「タスクの終了」 「プロセスの終了」

    vistaを使用しています。 タスクマネージャーの アプリケーションタブでの「タスクの終了」と プロセスタブでの「プロセスの終了」では違うのですか? どちらもアプリケーションを終了させる作業だと思っているのでうすが 「プロセスの終了」するときは警告画面がでます。 アドバイスよろしくお願いします。

  • タスクマネージャーのプロセスで・・・

    WIN_XP_PROを起動するとタスクマネージャーのプロセスにmessenger.exeというのが出てくるんですが、これがあるとエクスプローラとスタートメニューーが開けません。プロセスを終了すると開けるようになります。何か問題が起こってるのでしょうか?プロセス内のexeを消さなくても直る方法はありませんでしょうか?教えてください。お願いします。

  • タスクマネージャからプロセスを終了できない。

    タスクマネージャからプロセスを終了できない。 タスクマネージャからESET Smart securityを終了させようとしたら、 「操作を完了できませんでした。アクセスが拒否されました」 というメッセージが表示されました。 http://support.microsoft.com/kb/155075/ja に解決情報が書かれていましたが、難しくてよく分かりません。 具体的にどうすればいいのか説明してもらえませんでしょうか?

  • タスクマネージャーでプロセスの終了できない

    タスクマネージャーで、プロセスの終了をすると、 「プロセスを終了できません。 操作を完了できませんでした。 結合ハンドルが無効です。」 のメッセージボックスが出て、終了できないんです。 kill.exe からでもほとんど終了できません。 (kill -f だと終了できます) なんかのサービスが関与してるとか、ヒントでもあれば 教えて下さい。

  • タスクマネージャーのプロセスの戻しかた

    分が使う間だけプロセスを削除して 使い終わったら元に戻したいと思っていて タスクマネージャーでプロセスから終了というのを 選ぶと終了することができるとは思うのですが これを、元に戻すというのはできるのでしょうか。

  • タスクマネージャーが変!

    タスクマネージャーを起動すると、プロセスとかアプリケーション(だったかな?)のタブがあって、プロセスを終了させたりできますよね? たまに使っていたのですが、突然「タスク」しか表示されなくなり、したには「タスクの終了」と「切り替え」と「新しいタスク」しか出なくなり、「切り替えを押すと下のバーに収まり、「新しいタスク」を押すと〔新しいタスクの作成〕というものが出てきます。 しかも、開いたタスクは、下には収まるけど 消えません・・・・。初心者で、困ってます。どうすればもとのタスクマネージャーが開けるでしょうか・・・? どうぞ宜しくお願いします。

専門家に質問してみよう