質問: 壁紙のリアルタイムregeditコマンドを変更するにはどうすればよいですか? 私が欲しいのは、数時間ごとにデスクトップの壁紙をプログラムで変更することです。バッチファイル(.bat)を使用していますが、他の言語やプログラムは使用したくありません。windowsxpにプリインストールされているものだけを使用します。レジストリの値を変更するスクリプトをすでに作成しましたreg add "hkcu\control panel\desktop" /v wallpaper /d "c:\pictures\picture1.jpg" 問題は、次のコマンドを使用してもスクリプトがリアルタイムで有効にならないことです。rundll32.exe user32.dll,updateperusersystemparameters ,1 ,true 有効にするには、最初に再起動する必要があります。表示プロパティを使用する場合は、すぐに表示されます。私が気付いたのは、それが.jpg画像ではなく、.bmpファイルの場合、変更はリアルタイムで有効になるということです。2番目のオプションはjpgを24ビットbmpファイルに変換することです(まったく同じように見えますが、ファイルサイズは3倍になります)が、もっと良い方法を望んでいます。私はすでに物事をグーグルで検索しましたが、役に立ちません。あなた(役立つ読者)が.batまたは.vbsスクリプトを投稿して、デスクトップの壁紙をjpg画像で即座に変更できることを願っています。他のアプリやスクリプトをインストールせずに答えがあるといいのですが。
回答: 表示プロパティを使用する場合は、すぐに表示されます。私が気付いたのは、それが.jpg画像ではなく、.bmpファイルの場合、変更はリアルタイムで有効になるということです。 これは、windowsが壁紙のビットマップ以外をサポートしていないためです(はい、windows 7でも)。jpeg、gif、pngなどを壁紙として設定すると、windowsは最初にそれをビットマップに変換して一時ファイルに保存し、壁紙をそのファイルに設定します(windows 7ではファイル名がこれをよりよく示しています) :in windows xp: %appdata%\microsoft\internet explorer\wallpaper1.bmp in windows 7: %appdata%\roaming\microsoft\windows\themes\transcodedwallpaper.jpg ですから、最初にビットマップに変換する必要があるのではないかと思います。