2012-02-02 15 views
5

In Windows 7, come posso ottenere in modo programmatico la cartella temporanea del sistema?Come ottenere la "cartella temporanea" in Windows 7?

+0

correzione - cartella temporanea, non è la cartella utente – Ullan

+0

Ho aggiornato la questione di dire "sistema di cartella temporanea", spero che sia quello intendevi, dall'ultimo commento. Aggiungi ulteriori chiarimenti se questo è un requisito assoluto, ad esempio. –

+0

Solo per l'utente, la variabile di ambiente 'TEMP' (anche se credo che ci sia anche un WinAPI per questo ...?) Dovrebbe essere sufficiente. Non sei sicuro di come farlo, tuttavia, da un utente non associato. –

risposta

16

La funzione GetTempPath è probabilmente quello che stai cercando.

TCHAR buf [MAX_PATH]; 

if (GetTempPath (MAX_PATH, buf) != 0) 
    MessageBox (0, buf, _T("Temp path"), 0); 
+2

Questo non recupera la cartella TEM SYSTEM nella maggior parte dei casi. Per impostazione predefinita, restituirà la cartella temporanea dell'utente che di solito è \ Users \ \ AppData \ Local \ temp. –

+0

La domanda originariamente diceva solo "cartella temporanea", non "cartella temporanea di sistema". –

2

Avete dato una prova per GetTempPath()?

Recupera il percorso della directory designata per i file temporanei.

Si può trovare un esempio di codice here.

+0

Il collegamento contiene anche l'ordine in cui viene determinato il file temporaneo, che sembra essere di tipo user-first e implica che "Directory di Windows" è il percorso temporaneo finale? –

+1

Infatti, dovrebbe essere letto come cartella "Temp" all'interno della directory% WINDIR%. – nulltoken

+0

Nella maggior parte dei casi non restituirà% WINDIR% \ temp. –

Problemi correlati