API宣言
WindowsAPI(関数)を使うためには、事前に宣言が必要となります。
Declare Function GetWindowsDirectory Lib "kernel32" _
Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal uSize As Long) As Long
Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal uSize As Long) As Long
解説
この宣言では、GetWindowsDirectory関数(Windowsディレクトリのパスを取得)が使用できる様になります。
プログラミング例
具体的なプログラミング例を紹介します。
Sub Windowsディレクトリを取得()
Dim バッファー As String
Dim サイズ As Long
Dim 結果 As Long
バッファー = String(260, 0) ' 260文字分の空のバッファーを作成
サイズ = Len(バッファー)
結果 = GetWindowsDirectory(バッファー, サイズ)
If 結果 > 0 Then
バッファー = Left(バッファー, 結果)
MsgBox "Windowsディレクトリは: " & バッファー
Else
MsgBox "ディレクトリの取得に失敗しました"
End If
End Sub
Dim バッファー As String
Dim サイズ As Long
Dim 結果 As Long
バッファー = String(260, 0) ' 260文字分の空のバッファーを作成
サイズ = Len(バッファー)
結果 = GetWindowsDirectory(バッファー, サイズ)
If 結果 > 0 Then
バッファー = Left(バッファー, 結果)
MsgBox "Windowsディレクトリは: " & バッファー
Else
MsgBox "ディレクトリの取得に失敗しました"
End If
End Sub
上記のプログラムは、Windowsディレクトリを取得し表示する内容となります。
まとめ
WindowsAPI関数:GetWindowsDirectoryを使用し、Windowsのディレクトリを取得する方法について紹介しました。