Inizializzazione di un'applicazione
Per abilitare la funzionalità del programma di installazione, un'applicazione deve chiamare una serie di funzioni durante l'inizializzazione. Per altre informazioni, vedere Meccanismo di installazione. I passaggi seguenti descrivono come usare il programma di installazione per inizializzare un'applicazione:
Per inizializzare un'applicazione
Chiamare la funzione MsiGetProductCode in modo che l'applicazione possa identificarsi con il programma di installazione.
Il codice prodotto è un parametro obbligatorio per molte funzioni del programma di installazione.
Chiamare la funzionemsiGetUserInfoper raccogliere informazioni sull'utente alla prima avvio dell'applicazione.
Se la chiamata a MsiGetUserInfo ha esito negativo, chiamare la funzionemsiCollectUserInfoper raccogliere informazioni sull'utente.
Visualizzare un'interfaccia utente predefinita, se necessario, chiamando la funzionemsiSetInternalUI.
Per creare un'interfaccia utente personalizzata, registrarla con il programma di installazione chiamando la funzionemsiSetExternalUI.
Chiamare la funzione MsiEnableLog per impostare il livello di registrazione.
Presentare all'utente funzionalità disponibili enumerando le funzionalità dell'applicazione. È possibile enumerare le funzionalità nei modi seguenti:
- Interroga le funzionalità del programma di installazione singolarmente. Ad esempio, prima che l'applicazione disegni un pulsante o una voce di menu, l'applicazione chiami la funzionemsiQueryFeatureStatein modo che il programma di installazione possa verificare che la funzionalità sia disponibile.
- Enumerare tutte le funzionalità disponibili contemporaneamente chiamando la funzione MsiEnumFeatures. Per usare questa funzione, l'applicazione deve chiamare MsiEnumFeatures ripetutamente durante l'incremento di un indice.
Ottenere informazioni dettagliate sull'installazione corrente chiamando ripetutamente le funzioni di enumerazione seguenti, incrementando una variabile di indice per ogni chiamata:
- Chiamare la funzione MsiEnumProducts per enumerare i prodotti registrati con il programma di installazione.
- Chiamare la funzionemsiEnumComponentsper enumerare i componenti.
- Chiamare la funzionemsiEnumComponentQualifiersper enumerare i qualificatori dei componenti.
- Chiamare la funzionemsiEnumClientsper enumerare i prodotti per un determinato componente.
Se il valore restituito in una funzione di enumerazione è ERROR_SUCCESS, sono ancora presenti altri elementi da enumerare e la funzione deve essere chiamata di nuovo con una variabile di indice incrementata. Se il valore restituito è ERROR_NO_MORE_ITEMS, tutti gli elementi sono stati enumerati e la funzione non deve essere chiamata di nuovo.