| |
|
|
|
Beschreibung:
ExpandEnvironmentStrings ersetzt dans einem Textausdruck alle Umgebungsvariablen par ses expandierten Werte. si aus qui Registry Pfade ausgelesen volonté, devrait cet d'abord avant qui Weiterverarbeitung par cet Funktion envoyé volonté.
Deklaration:
DEF @ExpandEnvironmentStrings(3)!kernel32,ExpandEnvironmentStringsA
paramètre:
1.paramètre: Adresse eines Cordes ou bien Bereichsvariable avec einem String, qui Umgebungsvariablen contient. 2.paramètre: Bereichsvariable, qui den expandierten String aufnimmt. 3.paramètre: Taille qui Bereichsvariable aus paramètre 2 dans Bytes comme LongInt.
Rückgabewert:
0 chez Misserfolg. Ansonsten le nombre qui Buchstaben im Rückgabestring. Ist paramètre 2 trop petite dimensioniert, peux on so sur cet Funktion aussi qui benötigte Taille de paramètre 2 herausfinden.
Beispiele:
KompilierenMarqueSéparationDEF @ExpandEnvironmentStrings(3)!kernel32,ExpandEnvironmentStringsA
Declare Fehler&,ENVErgebnis#,Button&
Declare ENVERGEBNIS$
PROC VariableErsetzenInString
Parameters ZuValidierenderText$
der interne Puffer muß das gesamte Environment abdecken können
sonst gibt es einen Fehler bezüglich der Bereichsgrenze
Dim ENVErgebnis#,261
LET ENVERGEBNIS$=
LET FEHLER&=@ExpandEnvironmentStrings(@addr(ZuValidierenderText$),ENVErgebnis#,261)
Let ENVERGEBNIS$= @String$(ENVErgebnis#,0)
Dispose ENVErgebnis#
RETURN ENVERGEBNIS$
endproc
Windowstyle 31
Windowtitle Umgebungsvariablen ersetzen
Window 0,0-640,440
Let Button&=@CreateButton(%HWND,Variable eingeben,20,300,200,30)
While 0=0
Waitinput
IF @Getfocus(Button&)
VariableErsetzenInString @input$(Umgebungsvariable eingeben:,Ersetzen,%WINDIR%)
Print @$(0)
endif
Wend
|
|
|
| |
|
|