1


1

vbscriptでレジストリキーのすべての値を読み取る方法は?

レジストリに次の値があります

key:

  • HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Internet Settings \ Accepted Documents \ *

値:

* -> application/msword
** -> application/vnd.ms-excel
*** -> application/vnd.ms-powerpoint

等々

それらすべてを読む方法を知りたい

  • Wscript.Shell ` RegRead` *を使用すると、1つの値しか読み取ることができませんが、値が事前にわかりません…​

1 回答


1


まあ、私はそれを得た

次のようにwmiを使用する必要がありました。

option explicit

const HKLM = &H80000002

dim keyPath
keyPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Accepted Documents"

dim reg

dim valueNames, types
dim value
dim i

  set reg = getObject( "Winmgmts:root\default:StdRegProv" )

  if reg.enumValues( HKLM, keyPath, valueNames, types ) = 0 then
    if isArray( valueNames ) then
      for i = 0 to UBound( valueNames )
        reg.getStringValue HKLM, keyPath, valueNames(i), value
        msgBox( valueNames(i) & "=" & value )
      next
    end if
  end if

サルドス

sas