アプリ版:「スタンプのみでお礼する」機能のリリースについて

お世話になります。
どなたか教えてください。

WINDOWSのシャットダウンの前に、OKorキャンセルのメッセージを出し、
OKならあるソフトを起動し、シャットダウン操作をキャンセル。
キャンセルならそのままシャットダウン操作を続行したいのですが、
どうしたらいいでしょうか?

グループポリシー→Windowsの設定→スクリプト→シャットダウンの所に下記のスクリプトを追加しましたが、自己完結するソフトではなくユーザーが操作するソフトの場合はダメなようです。

タイミング的にはスタート→シャットダウン→ここでメッセージを出したい→Windowsのシャットダウンのダイアログ


追加しようと思っているスクリプト

Option Explicit

'オブジェクト変数の宣言とWshShellオブジェクトの作成。
Dim objWshShell
Set objWshShell = WScript.CreateObject("WScript.Shell")

If MsgBox("ソフトを起動するには『キャンセル』ボタンを押してください。  " _
, vbOKCancel) = vbcancel Then

'ソフトを起動。
objWshShell.Run """C:\Program Files\ソフト名.exe"""

End If

Set objWshShell = Nothing

質問のカテゴリーもここで良いのかどうかはっきりしませんが、どうぞよろしくお願いいたします。

A 回答 (2件)

丁度私も今それをやっていたので。


「グループポリシー→Windowsの設定→スクリプト→シャットダウンの所に下記のスクリプトを追加」
は、いいと思います。
そこでバッチファイルを指定します。
バッチファイルの中は以下の通り。
--------------------------------------------
(1) シャットダウンをいったんキャンセル
(2) UIのあるExeを起動
(3) もう一度シャットダウン
--------------------------------------------
shutdown.exe -a
C:\hoge\シャットダウン前の確認.exe
shutdown -r -t 0
--------------------------------------------
こんな感じです。

しかしこれ、Windows Update が当たってからスクリプトが起動するため
うちでは、毎回大量のWindows Updateを当てながらみんな帰ってしまうため
もうひと知恵いるところです。

情報がありましたら教えてください。
ではでは。
    • good
    • 0

使用しているVBのバージョンや環境を書いてください。

    • good
    • 0
この回答へのお礼

回答ありがとうございます。


環境はWindowsXP(2000,7も少々あり)。vb6.0です。

会社のPCなんですが、フローティングライセンスのソフトをみんなで使っています。
退社時にWEB上にあるライセンスロッカーにライセンスを返却するのを忘れる人が多いので、
こうしたものを作りたいなと思った次第です。

私はExcelのVBAを少々やっている程度なので、すぐには理解不能ですが、参考にさせていただきます。

お礼日時:2011/04/15 16:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!