(方法)コマンドラインからスクリーンセーバーが起動するまでの時間を変更できますか?


10

タイトルのとおり(Windows 7)。(方法)コマンドラインからスクリーンセーバーが起動するまでの時間を変更できますか?可能ですか?

通常は5分の設定で十分ですが、長くすることもあります。ホットキーにバインドされている2つの長さを希望します(その方法を知っています)。

2つのマクロを記録してそれらを使用することはできると思いますが、X分間非アクティブになってからスクリーンセーバーを起動するようにWindowsに指示するために使用できるコマンドラインオプション(レジストリの更新を含む)があるかどうか疑問に思いました。

(スクリーンセーバーをすぐに起動したくないので注意してください。Windowsが起動するまでの待機時間を変更したいのですが)

前もって感謝します。


[回答]私はようやく@Gjordisからの回答のバリエーションを使用しましたが、すべてのクレジットは彼のものです。

3つの操作が必要な理由はわかりませんでした。追加、削除、名前の変更、2つに減らしました。

ホットキーにバインドしたいので、2つのコマンドを1つで実行する必要があります。通常、コマンドはセミコロンで区切り、それらを1行で発行できます(例:)dir c:;dir d:regコマンドでエラーが発生したため、最終的には2つのバッチファイルがあります。コンテンツは同一であり、期間のみが変更されます。

奇妙なことに-値はレジストリに正しく書き込まれますが、コントロールパネル/パーソナライズ/スクリーンセーバーは常にそのGUIを更新しません。しかし、テストしたところ、スクリーンセーバーは期待どおりに動作します。

@echo off
reg delete "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /f
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /t REG_SZ /d 180 /f

これが役立つ場合は、質問に賛成投票してください;-)

回答:


7
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /t REG_SZ /d 600 /f

値600は秒単位、= 10分興味深いことに、指摘したように、これは初めてのみ機能します。次の変更では、次のように新しいキーを作成する必要があります。

reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOutTemp /t REG_SZ /d 300 /f

次に古いものを削除します

reg delete "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /t REG_SZ /d 600 /f

次に新しいものを正しい名前にコピーします

reg copy "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOutTemp "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut

これでうまくいき、コンピュータを破壊することはありませんが、このレジストリ値を持っていなかったので、これを削除することは恐ろしいことではないと思います。

ここにREGドキュメント:http : //www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/reg.mspx? mfr=true


作品:-)初回のみ:-(おそらくそれ私は、レジストリエントリに延期時間がなかったので、そう追加することができますが、その後変更する必要があるかもしれません+1しようとしてくれてありがとう!。
MawgはREINSTATEモニカ言う

1
編集したがうまくいけば、あまりにも、他の時間を動作するように
Gjordis

+1まあ、それは奇妙です。レジストリキーが更新されていることがわかりますが、デスクトップを右クリック(またはコントロールパネルからアクセス)して[peronalize]を選択すると、GUIに5分が表示されます。レジストリで10秒を設定した場合、スクリーンセーバーが10秒(または数分)後に起動しません。GUIで1分を設定すると、1分後に開始されます(レジストリが正しく更新されます)。
Mawgはモニカを2013

多分それは有効な値を持っています
Gjordis

+1回答のバリエーションを使用して、上記の質問に投稿しました。助けてくれてありがとう
モーグはモニカを2013

1

実際、この方法(レジストリ経由)は、再起動するまで機能しません。PCを再起動せずにそれを行う唯一の方法は、APIを使用することです。

https://www.pcreview.co.uk/threads/utility-to-temporarily-change-the-screensaver.2321339/#post-7442568

ただし、VBスクリプトなどのコマンドラインからAPIを使用することはできません。ここに理由があります:

http://forums.codeguru.com/showthread.php?31534-VBScript-and-API&p=86696#post86696

(最初のリンクから)ユーティリティSetScrTimeout.exeを呼び出すことで実行できますが、残念ながら、この小さなユーティリティはインターネット上に存在しません。


それをありがとう。おそらく、SetScrTimeout.exeはマシンに戻る途中で見つかりますか?会社のファイアウォールのためにチェックできませんが、そこにあるはずです-それ以外はすべてです;-)
モーグはモニカを18:11

1
FTPサーバーを試してみましたが、結果はありませんでした。その目的のためのVBソースコード(freevbcode.com/ShowCode.asp?ID=504)を見つけましたが、exeを作成して共有することができません。
アレクサンダー

VBのどのバージョン(私はVN 6だと思います)はありますか?
Mawgはモニカを

1
はい、VB6です。私の返事が遅れて申し訳ありません。
Aleksandar
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.