ヤボ用で必要になったので。
最初はGetSetting()ってメソッドでレジストリの値を取得しようと思ったんだけど、どうやらHKEY_CURRENT_USER\Software\VB and VBA Program Settings\以下のキーしか操作できないらしいので今回の目的にはあわない。
なんだかんだで、とっても簡単にできたかも。
ポイントとしてはこんな感じ。
- WScript.Shellのオブジェクトを使う
- 極力簡単に(dllを読み込んだりなど面倒な処理を追加しないでも)値を取得できる
注意するところとして…今回はレジストリの値を参照するだけだけど、値を変更したり削除するときは絶大で細心に注意すること。
でないと、アプリが起動しなくなったり…最悪再インストールすることになっちゃう。
コードとしては感じ。
とりあえず、試しにAppleのサポートアプリなインストールパスあたりを取得してみることに。
Public Function GetRegistry() As String
' 変数を宣言する
Dim objShell As Object
Dim strKey As String
Dim strValue As String
' 変数を初期化する
Set objShell = CreateObject("WScript.Shell")
strKey = "HKEY_LOCAL_MACHINE\SOFTWARE\Apple Inc.\Apple Application Support\InstallDir"
strValue = ""
On Erorr GoTo MethodEnd
' レジストリの値を取得する
strValue = objShell.RegRead(strKey)
' 取得した値をメッセージボックスに表示する
MsgBox strValue
MethodEnd:
' オブジェクトを破棄する
If Not objShell Is Nothing Then
Set objShell = Nothing
End If
End Function
参照するレジストリはエディタでみるとこんな感じ。
んで、実行したらこんな感じ。
ダイアログに値が表示されとる。
んまま、明日への自分へのメモってことで。

