Windows Installer che utilizza un'unità USB per scopi temporanei


14

Quando si installano app basate su Windows Installer, sembra che utilizzi spesso il mio disco rigido USB esterno (quando è collegato) come posizione temporanea mentre si espande e installa l'applicazione (crea una cartella dalla radice con un nome guida) . Esiste un modo per cambiarlo in modo che sia sempre predefinito su un'unità specifica?

Questo sembra essere il caso di Windows Vista e 7, non sono sicuro delle versioni precedenti.

EDIT: le variabili d'ambiente attuali sono così:

TEMP=C:\Users\<me>\AppData\Local\Temp
TMP=C:\Users\<me>\AppData\Local\Temp

EDIT: ho un sospetto divertente che stia usando l'unità con il più grande spazio disponibile disponibile.


Non so se c'è un modo per cambiarlo o no, ma ti dirò perché questo accade. Utilizza l'unità che ha più spazio libero per produrre la directory temporanea con i file e, come dici tu, il suo nome sarà univoco.
Xandy,

2
Credo che tu abbia a che fare con la modifica "utilizzando lo spazio libero disponibile più grande". La mia esperienza è totalmente aneddotica, ma ho aggiunto un HDD terabyte al mio box di Windows 7 poco dopo aver installato il sistema operativo. Il giorno successivo ha eseguito gli aggiornamenti di Windows. Non avevo ancora inserito alcun file sulla nuova unità e dopo il riavvio ho trovato un mucchio di file temporanei memorizzati lì.
TechParadox,

Risposte:


14

Credo che Windows Installer utilizzi la %TMP%variabile di ambiente. Potresti voler controllare questo valore e vedere se sta puntando alla tua lettera di unità HD esterna.

AGGIORNARE

Strano ... questa sembra essere una "caratteristica" di Windows Installer (per utilizzare l'unità con lo spazio più libero). Non riesco a trovare un'opzione per disabilitarlo. Mi chiedo se è possibile bloccare il sistema con autorizzazioni / flag di sola lettura o qualcosa di simile. Mi dà fastidio che Microsoft non ti darebbe la possibilità di disattivarlo.

2 ° AGGIORNAMENTO

Ok, quindi ho trovato questo articolo sulla proprietà ROOTDRIVE . Di particolare nota:

Se ROOTDRIVE non è impostato su una riga comandi o creato nella tabella Proprietà, il programma di installazione imposta questa proprietà. Durante un'installazione amministrativa, il programma di installazione imposta ROOTDRIVE sulla prima unità di rete connessa su cui può essere scritto. Se non si tratta di un'installazione amministrativa o se il programma di installazione non riesce a trovare unità di rete, il programma di installazione imposta ROOTDRIVE sull'unità locale che può essere scritta con lo spazio più libero.


Io non la penso così. Le variabili% TEMP% e% TMP% puntano al mio disco C: e gli installatori spesso copiano i file sul mio disco R :.
Snark

TEMP e TMP sono impostati su: C: \ Users \ <me> \ AppData \ Local \ Temp
Douglas Anderson

Mi sono imbattuto in una situazione simile. Non sono sicuro di quale sia il rimedio.
Vivek,

Comprendo che se la proprietà ROOTDRIVE non è impostata, i file temporanei vanno sul disco con la massima quantità di spazio libero. Ma la domanda più interessante è perché questi file temporanei (!) Non vengono rimossi automaticamente al termine dell'installazione?
Erik,

3

Ho avuto questo problema con un HDD esterno utilizzato esclusivamente per foto personali e home video. Ho disabilitato le autorizzazioni di "eliminazione" per tutti gli utenti per impedire la perdita di dati. Tuttavia, l'unità ha iniziato a riempirsi con i file tmp MSI. Ogni rimozione automatica è stata rifiutata così come qualsiasi strumento di pulizia perché (come ho già detto) avevo rifiutato le autorizzazioni di eliminazione. La mia soluzione era disattivare tutte le autorizzazioni sull'unità di destinazione per tutti gli utenti (ad eccezione dei privilegi di "scrittura" per un utente), impedendo in primo luogo al sistema operativo di scrivere sull'unità. Spero che sia di aiuto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.