Option Explicit Dim strKey, strEntry 'レジストリキーを指定 myInput 'エントリを指定 myInput2 Call MyRegRead(strKey,strEntry) '********************************************************* '* Sub myInput -- レジストリキーを入力 '********************************************************* Sub myInput strKey = InputBox("レジストリキー を入力", "レジストリキーを入力") If IsEmpty(strKey) Then WScript.Quit If strKey = "" Then myInput End If End Sub '********************************************************* '* Sub myInput2 -- レジストリエントリを入力 '********************************************************* Sub myInput2 strEntry = InputBox("レジストリエントリ名 を入力" & vbCrLf & "('既定'ならそのままOK)", "エントリを入力") If IsEmpty(strEntry) Then strEntry = "" End Sub '********************************************************* '* Sub MyRegRead -- レジストリエントリを表示 '********************************************************* Sub MyRegRead(srtKey,strEntry) Dim objFSO,objTxt,objShell Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") Set objTxt = objFSO.OpenTextFile("RegRead_RegEntry1.txt", 8, true, -2) Set objShell = WScript.CreateObject("WScript.Shell") On Error Resume Next objShell.RegRead(srtKey & "\" & strEntry) Select Case Err.Number Case -2147024894 WScript.Echo "キー or エントリがありません" objTxt.Close Case 0 objTxt.WriteLine srtKey & "\" If strEntry = "" Then objTxt.WriteLine "エントリ名 : (既定)" objTxt.WriteLine "データ : " & objShell.RegRead(srtKey & "\") objTxt.WriteLine "データ(Hex): " & Hex(objShell.RegRead(srtKey & "\")) Else objTxt.WriteLine "エントリ名 : " & strEntry objTxt.WriteLine "データ : " & objShell.RegRead(srtKey & "\" & strEntry) objTxt.WriteLine "データ(Hex): " & Hex(objShell.RegRead(srtKey & "\" & strEntry)) End If objTxt.WriteBlankLines (1) objTxt.Close objShell.Run "RegRead_RegEntry1.txt" Case Else objTxt.Close End Select Set objTxt = Nothing Set objFSO = Nothing End Sub