Azioni personalizzate sincrone e asincrone
Windows Installer elabora azioni personalizzate come thread separato dall'installazione principale. Durante l'esecuzione sincrona di un'azione personalizzata, il programma di installazione attende il completamento del thread dell'azione personalizzata prima di continuare l'installazione principale. Durante l'esecuzione asincrona, il programma di installazione esegue l'azione personalizzata contemporaneamente man mano che l'installazione corrente continua. Gli autori di azioni personalizzate devono pertanto essere consapevoli di tutti i thread asincroni che potrebbero apportare modifiche al database di installazione tra le chiamate di funzione.
In particolare, le chiamate a MsiGetTargetPath e MsiSetTargetPath devono essere evitate nelle azioni personalizzate asincrone. Usare invece MsiGetProperty per ottenere un percorso di destinazione. Le operazioni di database bulk, ad esempio importazione, esportazione e trasformazione, devono essere evitate in qualsiasi tipo di azione personalizzata.
I flag di opzione possono essere impostati nel campo Tipo della tabella CustomAction per specificare che i thread di azione principale e personalizzato vengono eseguiti in modo sincrono o asincrono. Vedere Opzioni di elaborazione restituite dall'azione personalizzata.
Il programma di installazione può eseguire solo azioni personalizzate di rollback e azioni di installazione simultanee come azioni personalizzate sincrone.