Quando eseguo un MSI (senza parametri) di solito devo fare clic sulle finestre di dialogo e scegliere se voglio installare l'utente corrente/tutti gli utenti, la directory di destinazione, ecc. Ecc. Cosa succede quando eseguo l'MSI con/qn (modalità silenziosa). Come faccio a trovare le risposte dove vengono scelte automaticamente per tutte quelle finestre di dialogo?Come trovare i valori predefiniti durante l'esecuzione di MSI con/qn (modalità silenziosa)?
risposta
Un MSI è fondamentalmente un database. Puoi usare Orca per aprirlo e visualizzare/modificare le impostazioni.
- Informazioni su Orca sono disponibili here.
- Una panoramica dettagliata su come utilizzare per l'Orca è here.
- Un po 'pertinente alla domanda , è possibile modificare quali utenti installerà il programma di installazione in modalità silenziosa . Le informazioni sono here.
Spero che questo ti abbia almeno orientato nella giusta direzione.
Edit:
Per esempio, scaricare il programma di installazione per WiX 3.0 e aprirlo in Orca.
- Passare alla tabella delle proprietà e verrà visualizzato un elenco di proprietà pubbliche (maiuscole) e private.
- Si noti che la proprietà
WIXUI_INSTALLDIR
è impostata suAPPLICATIONFOLDER
. - Vai alla tabella Directory, vedrai che è impostato per avere un valore predefinito "
vqee3ld3|Windows Installer XML v3
" o qualcosa di simile. - Per trovare quale finestra di dialogo imposta questa proprietà, andare alla tabella ControlEvent. Qui, vedrai che
InstallDirDlg
attiva l'evento SetTargetPath quando l'utente fa clic sul controllo Avanti. L'argomento questo evento imposta èWIXUI_INSTALLDIR
, che a sua volta definisceAPPLICATIONFOLDER
Si potrebbe provare a modificare queste proprietà e in esecuzione il programma di installazione per vedere come le proprietà vengono modificate. Se hai le proprietà predefinite che desideri impostare puoi eseguire. Per esempio, vicino Orca per rilasciare il blocco sul file msi ed eseguire:
msiexec /i Wix3.msi APPLICATIONFOLDER="C:\Program Files\WiX" /qn
Maggiori info su strutture delle tabelle MSI in this powerpoint
E 'vero che è possibile impostare le proprietà pubbliche attraverso la linea di comando. Queste proprietà sono sempre in maiuscolo e generalmente vengono sempre elencate nella tabella Proprietà, sebbene non sia garantito che ciò avvenga. Esaminando la tabella delle proprietà dovresti essere in grado di decodificare ciò che fa ogni proprietà pubblica. In caso contrario, di solito c'è una documentazione che accompagna l'MSI in formato PDF o readme.txt che può essere d'aiuto.
Con lo strumento corretto è anche possibile visualizzare i dettagli di ciascuna finestra di dialogo MSI e controllare gli eventi che sono stati definiti per impostarli. Ciò richiede uno strumento come Installshield o Wise.
Un'altra opzione possibile per l'installazione invisibile è una funzione MSI incorporata di cui sono appena venuto a conoscenza: la proprietà AdminProperties.Vedere le informazioni qui: http://msdn.microsoft.com/en-us/library/aa367542(v=vs.85).aspx
Bello! Questa proprietà non era intorno quando inizialmente risposi. –
- 1. di installazione MSI a chiamare un altro programma di installazione MSI in modalità silenziosa con WiX
- 2. Installazione silenziosa di un pacchetto MSI
- 3. Installazione modalità silenziosa MSIEXEC
- 4. esecuzione modalità silenziosa con java.exe
- 5. Come registrare i valori predefiniti in MonoTouch?
- 6. SingleOrDefault: come modificare i valori predefiniti?
- 7. Controllare se iPad è in modalità silenziosa
- 8. Cosa significa eseguire PHP in modalità silenziosa?
- 9. Valori predefiniti impliciti durante la deserializzazione di JSON utilizzando Jackson
- 10. Come specificare i valori predefiniti durante l'analisi di JSON in Go
- 11. Django imposta i valori predefiniti del modulo
- 12. GetPrivateProfileInt- legge solo i valori predefiniti
- 13. Esistono valori predefiniti per i registri?
- 14. Ripristina valori predefiniti di Preferenza
- 15. Valori predefiniti per valori nulli
- 16. ergonomia Java: come vengono calcolati i valori predefiniti?
- 17. Come eseguire il server integrato PHP in modalità silenziosa?
- 18. jquery.validation - come ignorare i valori predefiniti durante la convalida dei campi obbligatori
- 19. Installazione di .NET Framework 4 in modalità silenziosa
- 20. WTForms RadioField valori predefiniti
- 21. Come posso impostare i valori predefiniti usando Getopt :: Std?
- 22. Come faccio a sovrascrivere i valori predefiniti in jQuery Fullcalendar
- 23. C# - Come saltare i parametri con valori predefiniti?
- 24. Come impostare i valori predefiniti in un record
- 25. Come devo implementare i valori associati predefiniti con Swift Enums?
- 26. Come imposto i valori predefiniti degli attributi in sqlalchemy dichiarativo?
- 27. esegui Watin in modalità silenziosa, usando Team City
- 28. I percorsi angularjs possono avere valori di parametri predefiniti?
- 29. Registrare un servizio di conversione personalizzato mantenendo i valori predefiniti?
- 30. Buoni usi per i valori predefiniti dell'argomento di funzione mutabile?
Sono a conoscenza di Orca .. e so che le finestre di dialogo impostano fondamentalmente i valori per le proprietà. Tuttavia ... c'è un modo per scoprire quali proprietà vengono modificate da ciascuna finestra di dialogo? Questa è in realtà la carne della mia domanda. Grazie mille! – Nestor
Nestor, ho aggiornato la mia risposta con un esempio di ricerca di valori predefiniti, da quale finestra di dialogo proviene e come sovrascrivere il valore in modalità installazione invisibile. Ho davvero solo esperienza con gli MSI generati da WiX, quindi ho aggiunto un collegamento a un powerpoint con un buon diagramma delle tabelle MSI principali negli installer di Microsoft. –
+1 per il bel EDIT e il powerpoint. Grazie mille Jim – Nestor