プロが教える店舗&オフィスのセキュリティ対策術

%windir%\System32\rundll32.exe user32.dll,LockWorkStation
でコンピュータのロックをできることを最近知りました。ショートカットにして使用しています。

同様に、スタンバイもしくは休止状態をコマンドで呼び出すのは、できればショートカットにしたいのですが、可能でしょうか?
普通にやればいいじゃないか、思われるかと思いますが、なにとぞよろしくお願いします。といいますのも、Tweak-XPというのインストールしたところ、シャットダウン関連のショートカットを作ってくれて、しかしながら、休止状態とスタンバイがないのです。なんか寂しいので、、、。

どうぞよろしくお願いします。

A 回答 (8件)

私のXPは


rundll32.exe powrprof.dll,SetSuspendState
で休止状態になります。
    • good
    • 0
この回答へのお礼

いとっちゃん、最高!!(とか言ったら少し失礼かな、、)
完璧です!
本当にありがとうございます。

お礼日時:2003/01/30 05:37

ごめんなさい。



ANo.#4の
WshShell.SendKeys("{down 4}");
の下に
WshShell.SendKeys("{enter}");
を挿入してね。

それと
ANo.#6の
WshShell.SendKeys("{down 3}");
の下に
WshShell.SendKeys("{enter}");
を挿入してね。
    • good
    • 0

前回のは休止状態ね。



スタンバイは

var WshShell= new ActiveXObject("WScript.Shell");
var objArgs = WScript.Arguments;
var key1 = "HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon\\LogonType";
var timelug = 200;
var LogonType = WshShell.RegRead(key1);

if(LogonType==0){
WshShell.SendKeys("^{ESC}");
WScript.Sleep(timelug );
WshShell.SendKeys("u");
WScript.Sleep(timelug );
while( !WshShell.AppActivate("Windows のシャットダウン") ){WScript.Sleep(timelug );
}
WshShell.SendKeys("%w");
WScript.Sleep(timelug );
WshShell.SendKeys("%w");
WScript.Sleep(timelug );
WshShell.SendKeys("{up 4}");
WScript.Sleep(timelug );
WshShell.SendKeys("{down 3}");
}else{
WshShell.SendKeys("^{ESC}");
WScript.Sleep(timelug );
WshShell.SendKeys("u");
WScript.Sleep(timelug );
WshShell.SendKeys("s");
}
WScript.Quit();

です。
    • good
    • 0

あっ


WshShell.SendKeys("%w");
WScript.Sleep(timelug );
がダブってました。削除してね。
    • good
    • 0

これはどう?


Jscriptです。(拡張子はjsね)

var WshShell= new ActiveXObject("WScript.Shell");
var objArgs = WScript.Arguments;
var key1 = "HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon\\LogonType";
var timelug = 200;
var LogonType = WshShell.RegRead(key1);

if(LogonType==0){
WshShell.SendKeys("^{ESC}");
WScript.Sleep(timelug );
WshShell.SendKeys("u");
WScript.Sleep(timelug );
while( !WshShell.AppActivate("Windows のシャットダウン") ){WScript.Sleep(timelug );
}
WshShell.SendKeys("%w");
WScript.Sleep(timelug );
WshShell.SendKeys("%w");
WScript.Sleep(timelug );
WshShell.SendKeys("{up 4}");
WScript.Sleep(timelug );
WshShell.SendKeys("{down 4}");
}else{
WshShell.SendKeys("^{ESC}");
WScript.Sleep(timelug );
WshShell.SendKeys("u");
WScript.Sleep(timelug );
WshShell.SendKeys("+h");
}
WScript.Quit();
    • good
    • 0

私もXPで試しました。

休止にはならなかったですが、スタンバイにはなりましたよ。(なんでならないのか、わたしにはわかりません)

本題の、元に戻すやりかたです。

これはレジストリに値を新たに書き込んでます。書き込み場所のHKCUというのはHKEY_CURRENT_USERのことです。

スタート>ファイル名を指定して実行>「regedit」と入れてOK押す
レジストリエディタが開く
下記に従ってどんどん深くおりていきます。
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer
このExplorer直下に「Shutdown Setting」(種類:REG_DWORD)というものがあるので、それを削除してください。

このスクリプトの実行前にレジストリを確認したところ「Shutdown Setting」という項目は存在しませんでした。ですから削除して問題ありません。
これで元に戻ります。

最後にひとこと。
危ないことをするまえには復元ポイントの作成をぜひ!
お気をつけください。

●参考URL vbscript

Regwriteメソッド
http://www.microsoft.com/japan/msdn/library/defa …
SendKeyメソッド
http://www.microsoft.com/japan/msdn/library/defa …

注意:紹介した責任もありますので今回はがんばりました。わたしはvbsriptにもレジストリにも詳しくないので、もし聞くのであれば他の人にしてください!(>_<)
    • good
    • 0
この回答へのお礼

大変ご足労をおかけいたしました。感謝します。レジストリの操作はある程度リスキーでしたね、忘れてました。何でも慣れてきた頃が危ないですね。気をつけます。しかし今回はLinkZeroさんがいてよかったです。ありがとうございました。

お礼日時:2003/01/26 16:23

これはどうでしょうか?


「休止状態のショートカット」
Win2000用ですが・・・。
自己責任でどうぞ。

参考URL:http://win2000.nikkeibp.co.jp/tips/system/index0 …

この回答への補足

W2kのマシンで試したら上手くいきましたが、XPでは無理なようです。スタートメニューを表示してくれたもののそれから動きませんでした。
もしかしてこれはレジストリを変えているのでしょうか?その場合、元に戻す方法はございますでしょうか?

補足日時:2003/01/25 09:02
    • good
    • 0

私が質問の意味を間違っていたらごめんなさい!



こんなフリーソフトを入れてショートカットをディスクトップに置いておく というのはどうですか?

参考URL:http://www.vector.co.jp/soft/win95/util/se266333 …
    • good
    • 0
この回答へのお礼

そういう手もありましたね。大変参考になりました。ありがとうございます。

お礼日時:2003/01/25 08:46

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