Temp-Verzeichnisse



  • Hallo zusammen,
    folgendes Problem:

    Ich habe ein Screensaver, welcher nach dem Start Dateien in das TEMP - Verzeichnis kopiert. Um den entsprechenden Ordner herauszubekommen benutze ich GetTempPath().

    Starte ich den Bildschirmschoner manuell, liefert mir diese Funktion den normalen Temp-Ordner in "C:\Dokumente und Einstellung\..." (usw., man kennt das) zurück. Soweit völlig in Ordnung.

    Wird der Bildschirmschoner jedoch nach Verstreichen der entsprechenden Zeitspanne von Windows automatisch gestartet, liefert mir GetTempPath() auf einmal "C:\WINNT\TEMP" zurück!

    Ich kann mir das soweit erklären, daß dem ersten Ordner die Umgebungsvariable des Users, dem zweiten Ordner die des Systems entspricht (zu sehen in Systemsteuerung, System).

    Das Problem ist nun, daß wohl die Benutzer auf einigen Zielrechnern keinen Zugriff auf C:\WINNT\TEMP haben! Sprich, ich muss sicherstellen, daß die temporären Dateien *immer* in das Temp-Verzeichnis des jeweiligen Homedirs des Users geschrieben wird.

    Gibt es eine Möglichkeit, diesen Pfad in jedem Fall herauszufinden?

    GetUserName() liefert mir zwar bei beiden Aufrufmöglichkeiten den Namen des angemeldeten Users, aber diesen per Brute Force in die bekannte Ordnerstruktur einzufügen ist leider nicht, da das Programm auch auf fremdsprachigen Systemen laufen soll.

    Bin für jede Idee dankbar!

    Schönes Wochenende,
    Crest



  • @Crest,

    hab gerade mal in der Registry nachgeschaut.
    Der erste Eintrag den ich gefunden habe klingt vielversprechend:
    *HKEY_CURRENT_USER\Environment*
    Im Wert TEMP steht mein aktueller Temp Pfad:
    %USERPROFILE%\Lokale Einstellungen\Temp

    Du müsstest nur überprüfen ob das auch
    auf jedem anderen System stimmt.

    Hoffe das hilft dir weiter.

    Bye Peter.



  • Hi Peter!

    Hmm, hmmm, verstehe, du meinst, den Key direkt auslesen? *kopfkratz*

    Ich muss zugeben, ich kenne mich bei möglichen Userrechten unter Win2k/XP nicht so aus. Kann es sein, daß eine Applikation gar nicht auf die Registry zugreifen darf?

    Wenn es nur um fünf, zehn Rechner gehen würde, würde ich das sofort so machen. Klingt nämlich vielversprechend. Es geht aber leider um ein paar mehr... 😉

    Aber ich setz das Verfahren auf jeden Fall mal auf eine "Auprobieren!"-Liste für Montag. ;-))

    Gruß,
    Crest



  • Crest schrieb:

    Kann es sein, daß eine Applikation gar nicht auf die Registry zugreifen darf?

    LESEN kann jeder!
    Es wäre fatal, wenn das nicht so wäre!



  • @Crest, ich stimme Hepi zu.
    Beim Öffnen des Keys musst du lediglich darauf achten, dass allein das NUR_LESEN_FLAG gesetzt ist.

    Bye Peter.


Anmelden zum Antworten