Modifica del percorso di destinazione per una directory
Se possibile, il modo migliore per specificare il percorso di destinazione per una directory consiste nell'creare la tabella directory nel pacchetto di installazione per fornire il percorso corretto. Per altre informazioni, vedere Uso della tabella directory.
Se è necessario modificare il percorso della directory al momento dell'installazione, sono disponibili le opzioni seguenti:
- Specificare il percorso di una directory impostando il valore di una proprietà pubblica nella riga di comando. Durante l'azione CostFinalize, i percorsi di directory interni utilizzati dal programma di installazione vengono aggiornati al valore delle proprietà elencate come chiavi nella tabella directory. Per altre informazioni, vedere Using Properties and Setting Public Property Values on the Command Line.
- Specificare il percorso di una directory usando un'azione personalizzata. Se l'azione personalizzata deve essere eseguita prima dell'azione CostFinalize, è possibile utilizzare un tipo di azione personalizzato 51 per impostare il valore di una proprietà da una stringa di testo formattata. Se l'azione personalizzata viene eseguita dopo l'azione CostFinalize, è possibile utilizzare un tipo di azione personalizzato 35 per impostare il valore del percorso della directory da una stringa di testo formattata. Le azioni personalizzate che modificano una delle proprietà della cartella di sistema devono essere incluse nelle tabelle della sequenza di esecuzione (InstallExecuteSequence Table o AdminExecuteSequence Table) e nelle tabelle della sequenza dell'interfaccia utente (Tabella InstallUISequence e AdminUISequence Table) in modo che la cartella venga modificata durante le installazioni complete dell'interfaccia utente e dell'interfaccia utente di base .
- Se l'installazione esegue un'interfaccia utente completa, è possibile usare MsiSetTargetPath o SetTargetPath ControlEvent per impostare il percorso della directory. Controllare la proprietà ProductState per determinare se il prodotto che contiene questo componente è già installato prima di chiamare MsiSetTargetPath o SetTargetPath ControlEvent. Non tentare di modificare il percorso della directory di destinazione se alcuni componenti che usano tale percorso sono già installati per l'utente corrente o un utente diverso.
Le restrizioni seguenti si applicano a tutte le opzioni precedenti:
- Non tentare di modificare il percorso della directory di destinazione se alcuni componenti che usano il percorso sono già installati per l'utente corrente o per un utente diverso.
- Non tentare di modificare il percorso della directory di destinazione durante un'installazione di manutenzione.