Windows- und Systemordner ermitteln
Veröffentlicht am 01.10.2004
Die Namen des Windows- und Systemordners sind manchmal interessant, wenn Sie dort nach bestimmten installierten Dateien suchen möchten.
Zwei API-Funktionen ermitteln diese Verzeichnisnamen auf dem aktuellen System: GetWindowsDirectory und GetSystemDirectory.
Diese zwei sehr nützlichen Funktionen werden folgendermaßen deklariert:
Declare Function GetWindowsDirectory Lib "kernel32" Alias _
"GetWindowsDirectoryA" (ByVal lpBuffer As String, _
ByVal nSize As Long) As Long
Declare Function GetSystemDirectory Lib "kernel32" Alias _
"GetSystemDirectoryA" (ByVal lpBuffer As String, _
ByVal nSize As Long) As Long
Beiden Funktionen übergeben Sie einen vorinitialisierten String sowie dessen Länge. Das folgende Beispiel ermittelt den Windows- und Systemordner und weist die Namen dem entsprechenden Textfeld eines Formulars zu:
Dim ret As Long
Dim strBuffer As String, lLength As Long
strBuffer = String$(255, 0)
lLength = Len(strBuffer)
ret = GetWindowsDirectory(strBuffer, lLength)
If ret <> 0 Then
txtWinVerz = Left$(strBuffer, ret)
End If
strBuffer = String$(255, 0)
lLength = Len(strBuffer)
ret = GetSystemDirectory(strBuffer, lLength)
If ret <> 0 Then
txtSysVerz = Left$(strBuffer, ret)
End If