AFXTEMPROOT

Liefert den absoluten Pfad zum TempRoot Ordner, den die Interface-DLL für temporäre Dateien und Ordner verwendet, und der auch von der Engine genutzt werden kann. Dieser Ordner wird bei Bedarf neu angelegt. Auf NTFS-Dateisystemen wird er mit der Sicherheitsoption Vollzugriff für alle erstellt.

AFXTEMPROOT( )

Reihenfolge, in der nach geeigneten Verzeichnissen gesucht wird

Die folgende Tabelle listet die Reihenfolge auf, in der die Interface-DLL nach einem geeigneten Ort für den TempRoot Ordner sucht. Die Spalte identisch gibt an, ob zwischen den unterschiedlichen Arten der Instanzierung der Interface-DLL identische Ergebnisse zu erwarten sind oder nicht. Ob die Ergebnisse tatsächlich identisch sind, hängt von einer korrekten Konfiguration des Betriebssystems ab.

 

Sobald ein geeigneter Ort gefunden ist, wird die weitere Suche abgebrochen. Sollte wider Erwarten kein einziger der Versuche zum Erfolg führen, kann die Interface-DLL nicht geladen werden, und der entsprechende Prozess schlägt fehl.

Kriterium Beispiel mit IIS Beispiel bei VFP-Anwendung (EXE) identisch Hinweise
TempPath in der Konfigurationsdatei N:\MYTEMP\~AFX0900\ N:\MYTEMP\~AFX0900\ ja 1) 2)
CSIDL_COMMON_APPDATA C:\DOKUME~1\ALLUSE~1\ANWEND~1\DFPUG\AFX\9.0\ C:\DOKUME~1\ALLUSE~1\ANWEND~1\DFPUG\AFX\9.0\ ja 3) 4)
ALLUSERSPROFILE Umgebungsvariable C:\DOKUME~1\ALLUSE~1\~AFX0900\ C:\DOKUME~1\ALLUSE~1\~AFX0900\ ja 2) 5)
TMP Umgebungsvariable C:\WINDOWS\TEMP\~AFX0900\ C:\DOKUME~1\USERNAME\LOKALE~1\TEMP\~AFX0900\ nein 2) 5)
TEMP Umgebungsvariable C:\WINDOWS\TEMP\~AFX0900\ C:\DOKUME~1\USERNAME\LOKALE~1\TEMP\~AFX0900\ nein 2) 5)
%windir%\TEMP C:\WINDOWS\TEMP\~AFX0900\ C:\WINDOWS\TEMP\~AFX0900\ nein 2)
Windows Verzeichnis C:\WINDOWS\~AFX0900\ C:\WINDOWS\~AFX0900\ nein 2)
Windows Systemverzeichnis C:\WINDOWS\SYSTEM32\~AFX0900\ C:\WINDOWS\SYSTEM32\~AFX0900\ nein 2)
Aktuelles Arbeitsverzeichnis C:\WINDOWS\SYSTEM32\~AFX0900\ F:\PROJEKTE\AFX\~AFX0900\ nein 2)
CSIDL_LOCAL_APPDATA C:\DOKUME~1\DEFAUL~1\LOKALE~1\ANWEND~1\DFPUG\AFX\9.0\ C:\DOKUME~1\USERNAME\LOKALE~1\ANWEND~1\DFPUG\AFX\9.0\ nein 3) 4)
CSIDL_COMMON_DESKTOPDIRECTORY C:\DOKUME~1\ALLUSE~1\DESKTOP\~AFX0900\ C:\DOKUME~1\ALLUSE~1\DESKTOP\~AFX0900\ ja 3) 4) 6)
 

Hinweise:

1) Nur wenn der entsprechende Eintrag vorhanden ist.

2) Der Name wird nach dem Schema ~afxNNNN gebildet, wobei NNNN die Version der Interface-DLL bezeichnet, wie sie AFXVERSION(5) zurückgibt, links mit Nullen auf vier Stellen aufgefüllt.

3) Wenn der Pfad für die CSIDL nicht ermittelt werden kann, wird dieser Versuch übersprungen.
Siehe auch: WINFOLDER().

4) An den Pfad wird gemäß der Empfehlung von Microsoft folgende Ordnerstruktur angehängt: Vendor\Product\Version.

5) Die Umgebungsvariablen gelten immer für den Prozess, der die Interface-DLL geladen hat. Bei IIS Erweiterungen ist das dllhost.exe im Windows Systemverzeichnis (IIS Prozesskonto IWAM_machine), bei FoxPro Anwendungen die jeweilige EXE, also entweder die vfp9.exe oder die mit BUILD EXE erstellte Anwendung. Bei FoxPro COM-Servern ist es jener Prozess, der die COM-DLL instanziert hat.

6) Der Ordner ~afxNNNN wird auf dem Desktop des angemeldeten Beuntzers angezeigt.

Anmerkungen

Siehe auch