ExpandEnvironmentStrings: Unterschied zwischen den Versionen

Aus API-Wiki
Wechseln zu: Navigation, Suche
(Neu erstellt)
 
K (vb)
Zeile 2: Zeile 2:
 
Die Funktion ExpandEnvironmentStrings liefert den Inhalt von Umgebungsvariablen zurück.
 
Die Funktion ExpandEnvironmentStrings liefert den Inhalt von Umgebungsvariablen zurück.
  
<PRE>
+
<vb>Declare Function ExpandEnvironmentStrings Lib "kernel32.dll" _
Declare Function ExpandEnvironmentStrings Lib "kernel32.dll" _
 
 
                 Alias "ExpandEnvironmentStringsA" ( _
 
                 Alias "ExpandEnvironmentStringsA" ( _
 
                 ByVal lpSrc As String, _
 
                 ByVal lpSrc As String, _
 
                 ByVal lpDst As String, _
 
                 ByVal lpDst As String, _
                 ByVal nSize As Long) As Long</PRE>
+
                 ByVal nSize As Long) As Long</vb>
  
  
Zeile 20: Zeile 19:
 
''nSize''
 
''nSize''
 
:Dieser Parameter gibt die Größe von lpDst an.
 
:Dieser Parameter gibt die Größe von lpDst an.
 
  
 
==Rückgabe(n)==
 
==Rückgabe(n)==
  
 
Diese Funktion liefert die Anzahl der Zeichen zurück, die nach lpDst geschrieben wurden oder, falls lpDst nicht ausreichend groß dimensioniert war, geschrieben werden müssen.  
 
Diese Funktion liefert die Anzahl der Zeichen zurück, die nach lpDst geschrieben wurden oder, falls lpDst nicht ausreichend groß dimensioniert war, geschrieben werden müssen.  
 
  
 
==Beispiel==
 
==Beispiel==
  
<PRE>
+
<vb>Public Function ExpandEnvironmentString(ByVal strEnv As String) As String
Public Function ExpandEnvironmentString(ByVal strEnv As String) As String
 
 
     Dim strBuffer As String
 
     Dim strBuffer As String
 
     Dim lngBufSize As Long
 
     Dim lngBufSize As Long
Zeile 58: Zeile 54:
 
Public Sub Main
 
Public Sub Main
 
     Debug.Print ExpandEnvironmentString("%windir%\system32")
 
     Debug.Print ExpandEnvironmentString("%windir%\system32")
End Sub</PRE>
+
End Sub</vb>
 
 
  
 
==Hinweise==
 
==Hinweise==
  
 
Die Umgebungsvariable muß in Prozentzeichen verpackt werden. Wie im Beispiel zu sehen ist, kann lpSrc beliebigen Text enthalten, die Funktion sorgt dafür, daß die Umgebungsvariable nur durch ihren Inhalt ersetzt wird, der Rest bleibt erhalten.
 
Die Umgebungsvariable muß in Prozentzeichen verpackt werden. Wie im Beispiel zu sehen ist, kann lpSrc beliebigen Text enthalten, die Funktion sorgt dafür, daß die Umgebungsvariable nur durch ihren Inhalt ersetzt wird, der Rest bleibt erhalten.
 
  
 
==Betriebsystem==
 
==Betriebsystem==
Zeile 72: Zeile 66:
 
*Windows NT 3.1 und neuer
 
*Windows NT 3.1 und neuer
 
*Windows 95 und neuer
 
*Windows 95 und neuer
 
  
 
<!--==[OPTIONAL] Verwandte Funktionen==
 
<!--==[OPTIONAL] Verwandte Funktionen==
Zeile 91: Zeile 84:
  
 
*[http://msdn2.microsoft.com/en-us/library/ms724265.aspx MSDN Library]
 
*[http://msdn2.microsoft.com/en-us/library/ms724265.aspx MSDN Library]
 
  
 
<!--[[Kategorie:XYZ-Kategorie]]-->
 
<!--[[Kategorie:XYZ-Kategorie]]-->

Version vom 13. Mai 2008, 15:06 Uhr

Die Funktion ExpandEnvironmentStrings liefert den Inhalt von Umgebungsvariablen zurück.

<vb>Declare Function ExpandEnvironmentStrings Lib "kernel32.dll" _

               Alias "ExpandEnvironmentStringsA" ( _
               ByVal lpSrc As String, _
               ByVal lpDst As String, _
               ByVal nSize As Long) As Long</vb>


Parameter

lpSrc

Dieser Parameter enthält die Umgebungsvariable, dessen Inhalt zurückgegeben werden soll.

lpDst

Dieser Parameter enthält den Inhalt der Umgebungsvariable nach dem Aufruf der Funktion.

nSize

Dieser Parameter gibt die Größe von lpDst an.

Rückgabe(n)

Diese Funktion liefert die Anzahl der Zeichen zurück, die nach lpDst geschrieben wurden oder, falls lpDst nicht ausreichend groß dimensioniert war, geschrieben werden müssen.

Beispiel

<vb>Public Function ExpandEnvironmentString(ByVal strEnv As String) As String

   Dim strBuffer As String
   Dim lngBufSize As Long
   
   '   Größe des benötigten Speichers ermitteln
   strBuffer = vbNullString
   lngBufSize = Len(strBuffer)
   lngBufSize = ExpandEnvironmentStrings(strEnv, Byval 0&, lngBufSize)
   
   '   entsprechend großen Speicher bereitstellen
   strBuffer = Space$(lngBufSize + Len(vbNullChar))
   lngBufSize = Len(strBuffer)
   
   '   Daten holen
   lngBufSize = ExpandEnvironmentStrings(strEnv, strBuffer, lngBufSize)
   
   '   NullChar wegschneiden
   lngBufSize = InStr(1&, strBuffer, vbNullChar)
   If lngBufSize <> 0& Then
       strBuffer = Left$(strBuffer, lngBufSize - 1&)
   End If
   
   '   Fertig
   ExpandEnvironmentString = strBuffer

End Function

Public Sub Main

   Debug.Print ExpandEnvironmentString("%windir%\system32")

End Sub</vb>

Hinweise

Die Umgebungsvariable muß in Prozentzeichen verpackt werden. Wie im Beispiel zu sehen ist, kann lpSrc beliebigen Text enthalten, die Funktion sorgt dafür, daß die Umgebungsvariable nur durch ihren Inhalt ersetzt wird, der Rest bleibt erhalten.

Betriebsystem

Die Funktion ist unter folgenden Betriebssystemen funktionsfähig:

  • Windows NT 3.1 und neuer
  • Windows 95 und neuer

Quelle(n)