===== getreg.bat ===== @echo off rem reg.exeの結果を1行ごと%rに格納する for /F "usebackq delims=" %%r in (`reg.exe QUERY %1 /v %2`) do ( rem %rをタブ区切りデータとみなし、3列目を%tに格納する for /F "tokens=3 delims= " %%t in ("%%r%") do ( rem %tが空でなければ、レジストリ値だとみなす if not "%%t%" == "" ( echo %%t% goto e ) ) ) :e ===== 使用例 caller.bat ===== @echo off for /F "usebackq delims=" %%v in (`call getreg "HKEY_CURRENT_USER\Control Panel\Desktop" Wallpaper`) do set WALLPAPER=%%v% echo 壁紙=[%WALLPAPER%] for /F "usebackq delims=" %%v in (`call getreg "HKEY_CURRENT_USER\Control Panel\Colors" ActiveTitle`) do set ACTIVETITLE=%%v% echo タイトルバーの色=[%ACTIVETITLE%]