私は、ユーザーの設定で定義されたスクリーンセーバーを開始するはずのコードに取り組んでいます。 (コードはJavaにありますが、Windows上でのみ実行されます)。私の現在のアプローチは、レジストリのScreenSaveTimeOut値を1に設定することです。理論的には、ちょうど1秒の遅れの後にスクリーンセーバーを蹴るべきである。Windowsのスクリーンセーバーのレジストリ設定をプログラムで調整する方法
しかし実際には、そのようなことはありません。私はHKEY_CURRENT_USER \ Control Panel \ Desktop \ ScreenSaveTimeOutとHKEY_USERS.DEFAULT \ Control Panel \ Desktop \ ScreenSaveTimeOutの両方の値を結果なしでヒットしました。 regeditを起動すると値が変わるのがわかりますが、[ディスプレイのプロパティ] - > [スクリーンセーバー]の[待機]値は変更されません。
%SystemRoot%\System32\RUNDLL32.EXE user32.dll, UpdatePerUserSystemParameters
...しかし、それは何もしていないようでした:
はアン専門家交換スレッドは、私はすぐに変更を有効にするために、これを行うべきで示されています。
私が間違っていることに関するアドバイスや洞察はありますか?私は方法について多くを語ることはできない、
C:\WINDOWS\system32\ssstars.scr /s
をまたは:
私はこの同じことを提案しようとしていた。レジストリ設定を変更する必要がある理由、Blair? – JasCav
+1私のプランB.を推測するために:-)ジェイソン、私はする必要はありません、私はちょうど最もエレガントなソリューションを狙っています。私がこのアプローチに踏み込んだ場合、スクリーン・セーバーが欲しくないときにスクリーン・セーバーが来ないようにするために、シミュレートされたマウスの動きをコード化する必要もあります。これは、私の好みのためにちょうど少しハッキング - y、かなり行うことができます。 ScreenSaveTimeOut(とScreenSaveActive(おそらくScreenSaveTimeOut = 0に設定するとスクリーンセーバーが無効になっていると思うので、私が必要としているかどうかわからない)を使って遊んでいると、動く部品が少なくて済むと思います。 – BlairHippo
これは実際にはこれを理解したことはありませんでしたので、私は計画Bと一緒に行きました。 :-) – BlairHippo