Questo whitepaper descrive come utilizzare InstallAware per la pubblicazione di aggiornamenti software sul Web. Il ciclo di vita del software si è evoluto al punto in cui gli aggiornamenti dovrebbero ancora essere consegnati dopo la produzione originale di un prodotto. Per soddisfare questo requisito, gli sviluppatori hanno spesso il compito di creare client di aggiornamento web da zero. Questi client di aggiornamento Web fatti in casa consumano importanti risorse di sviluppo da costruire e mantenere nel tempo. InstallAware fornisce funzionalità di aggiornamento Web pronte all';uso per soddisfare questo requisito senza alcuno sforzo o costo per te; pur mantenendo la piena personalizzazione ed estensibilità nella buona tradizione di InstallAware.
Come pubblicare il sito web di Asp.net su internet
A differenza di altri meccanismi di aggiornamento Web, InstallAware non installa un servizio di aggiornamento che consuma costantemente risorse di sistema e memoria e aumenta la superficie di attacco sul computer client. InstallAware non impone il proprio marchio o impone altre limitazioni all';esperienza utente degli aggiornamenti Web. Mentre alcuni meccanismi di aggiornamento Web possono essere personalizzati solo tramite modelli HTML, InstallAware consente di assumere il pieno controllo dell';intero processo di aggiornamento? includendo non solo l';interfaccia utente di aggiornamento, ma anche il flusso di lavoro. Gli aggiornamenti possono essere spediti in modo selettivo a un sottoinsieme della tua base di utenti, deciso in base a qualsiasi set personalizzato di parametri che potresti avere.
La funzionalità di aggiornamento automatico di InstallAware è modellata dopo Windows Update per garantire un';esperienza utente ottimale e sicurezza. Il client di aggiornamento Web è stato implementato interamente in InstallAware e non in un ambiente di programmazione di terze parti separato; che è una testimonianza delle capacità di scripting MSIcode di InstallAware e capacità di progettazione di finestre di dialogo. Ciò rende anche l';intero processo di aggiornamento completamente personalizzabile e trasparente. Poiché vengono forniti i codici sorgente completi per il client di aggiornamento, è molto facile iniettare un comportamento personalizzato o revisionare completamente il meccanismo di aggiornamento, se necessario; pur avendo blocchi di codice precompilati e finestre di dialogo di aggiornamento a portata di mano per evitare una costosa reingegnerizzazione del comportamento comune degli aggiornamenti web.
Inoltre, poiché la funzionalità di aggiornamento Web viene compilata nel file di installazione principale, non è necessario installare un client di aggiornamento separato sui sistemi di destinazione, risparmiando spazio sia sui computer degli utenti finali che all';interno del file di installazione grazie a un carico utile ridotto.
Infine, proprio come per Windows Update, InstallAware pianifica gli aggiornamenti Web da eseguire su una data e un';ora scelte dall';utente finale. Il client di aggiornamento non consuma mai memoria o altre risorse di sistema in background, poiché viene eseguito solo in questo momento. Il processo di download e installazione dell';aggiornamento è molto poco intrusivo (di nuovo, proprio come Windows Update), con i fumetti dei messaggi nella barra delle applicazioni che forniscono utili indicatori sulla disponibilità degli aggiornamenti e sullo stato di avanzamento del download / installazione. Ancora una volta, tutti questi aspetti pratici del client di aggiornamento possono essere facilmente personalizzati semplicemente modificando lo script MSIcode esistente e le finestre di dialogo.
Questi vantaggi rendono gli aggiornamenti Web di InstallAware la tecnologia ideale per inviare aggiornamenti ai sistemi degli utenti finali dopo che il prodotto è stato rilasciato alla produzione, offrendo il massimo risparmio possibile senza perdere la possibilità di personalizzare il processo di aggiornamento Web per i processi aziendali e le esigenze dei clienti.
Abilitazione del client di aggiornamento Web
Per abilitare gli aggiornamenti Web per i prodotti che si stanno installando con InstallAware, procedere come segue.
1. Avviare l';IDE InstallAware utilizzando il menu Start di Windows e aprire il progetto di installazione del prodotto per il quale si desidera abilitare il client di aggiornamento Web..
2. Nella scheda Progettazione, nel gruppo Visualizzazioni, fare clic sul pulsante Dettagli prodotto. Scegli la vista del progetto Proprietà del progetto sotto l';intestazione Informazioni sull';applicazione.
3. Selezionare la casella di controllo Ricevi aggiornamenti dell';applicazione. InstallAware suggerisce automaticamente un URL iniziale per il campo URL Monitor. Rivedi l';URL come necessario per indirizzare il tuo server web. Non preoccuparti per il file updates.ini per ora.
Questo è tutto! Il client di aggiornamento Web InstallAware è ora abilitato per il tuo prodotto.
Tipi di aggiornamenti
Questo documento non descrive la creazione di aggiornamenti dei prodotti stessi. Non ci sono limiti prestabiliti su cosa possa essere incluso in un aggiornamento del prodotto. Un aggiornamento potrebbe essere un file setup.exe completo contenente la nuova versione completa del prodotto; potrebbe essere una patch che aggiorna le vecchie versioni dei prodotti installati alle versioni più recenti; o qualsiasi altro file eseguibile personalizzato che aggiorna il prodotto allo stato desiderato durante l';esecuzione:
* Programmi di installazione di prodotti completi: una ricostruzione completa del progetto di installazione esistente può essere utilizzata come aggiornamento per gli utenti finali. Durante l';esecuzione, l';installazione disinstalla automaticamente la versione del vecchio prodotto, trattando questo passaggio come un prerequisito di installazione, quindi passa alla reinstallazione dell';ultima versione dell';applicazione. Naturalmente, questo approccio porta l';inconveniente che gli utenti finali esistenti devono scaricare un programma di installazione versione completa, quando hanno già alcuni bit sul proprio sistema all';interno dell';installazione del prodotto esistente.
* Patch binarie: se si desidera invece pubblicare patch binarie incrementali, che contengono solo i dati modificati tra le versioni del prodotto, fare riferimento al white paper di InstallAware :Uso di InstallAware per le applicazioni di patch:, che descrive come creare patch per i prodotti utilizzando InstallAware.
* Programmi personalizzati: in alternativa, un aggiornamento può essere un file di programma completamente personalizzato che esegue qualsiasi sequenza di azioni come richiesto dallo scenario di aggiornamento. Non deve essere una configurazione o una patch, non deve essere un file creato da InstallAware; né ha bisogno di aggiornare alcun file, chiavi di registro e così via. Hai piena libertà nell';esecuzione di qualsiasi programma eseguibile che desideri, purché esegua l';operazione di aggiornamento che desideri.
Passa alla sezione successiva una volta che hai un paio di aggiornamenti disponibili per la tua applicazione. Ai fini del completamento di questa guida, puoi semplicemente ricostruire il tuo progetto di installazione esistente alcune volte senza modifiche, solo per avere diversi file setup.exe che fungono da aggiornamenti simulati del prodotto. Prima di ogni ricostruzione, assicurati di incrementare il campo Versione prodotto nel tuo progetto, in modo che InstallAware possa tenere traccia dei numeri :nuova versione: modificati.
Pacchetti di aggiornamento
Ogni aggiornamento di prodotto disponibile viene trattato in modo atomico in InstallAware e denominato :Update Pack:. Segui questi passaggi per definire i pacchetti di aggiornamento per il tuo prodotto:
1. Nella scheda Progettazione, nel gruppo Visualizzazioni, fare clic sul pulsante Aggiornamenti Web. Scegli la vista di progettazione degli Update Pack sotto l';intestazione Aggiornamenti Web.
2. Fare clic sul pulsante Nuovo per iniziare a creare una nuova definizione del pacchetto di aggiornamento. Viene visualizzata la finestra di dialogo Update Pack.
Nel campo Nome aggiornamento, inserire un nome descrittivo per questo aggiornamento. L';aggiornamento verrà visualizzato agli utenti finali che utilizzano questo nome quando controllano gli aggiornamenti.
Nel campo URL di download completo per il programma di installazione aggiornamenti, immettere l';indirizzo Web (o di rete) in cui è possibile scaricare il programma di installazione dell';aggiornamento effettivo in fase di runtime. È possibile scegliere siti FTP, HTTP o HTTPS per ospitare i file di aggiornamento. Assicurati di caricare il programma di installazione degli aggiornamenti sul tuo server usando il nome esatto del file specificato in questo campo.
Nel campo Descrizione aggiornamento, inserire la descrizione di più righe per questo aggiornamento.
Controllare il riavvio dopo aver eseguito la casella di controllo dell';upgrade installer se si desidera riavviare il sistema dopo l';installazione dell';aggiornamento. Proprio come per Windows Update, all';utente finale verrà richiesto un riavvio al termine al termine dell';installazione di tutti gli aggiornamenti selezionati.
Seleziona la casella di controllo Silent update installer se desideri eseguire in modo silenzioso il programma di installazione degli aggiornamenti. InstallAware passa l';opzione di una riga di comando di / s al programma di installazione degli aggiornamenti per facilitare l';installazione invisibile, che è il parametro standard della riga di comando per le installazioni di InstallAware silenziose. Se si sta eseguendo un programma personalizzato, si noti che l';opzione / s potrebbe non avere alcun effetto. Gli aggiornamenti vengono generalmente installati in modo invisibile all';utente ed è consigliabile per l';esperienza dell';utente finale ottimale eseguire anche gli aggiornamenti in modo silenzioso.
Se sono presenti altri parametri della riga di comando che si desidera passare al programma di installazione dell';aggiornamento, immetterli nei parametri della riga di comando aggiuntivi per il campo dell';installer di aggiornamento.
Fare clic su OK quando si è soddisfatti delle impostazioni per salvare la definizione del pacchetto di aggiornamento.
3. Ogni Update Pack può aggiornare una o più versioni del prodotto come meglio credi. Un Update Pack non ha limitazioni incorporate per quanto riguarda le versioni del prodotto a cui può essere applicato, ciò avviene a tua scelta.
Ad esempio, supponiamo che tu abbia tre versioni del tuo prodotto? versioni 1.0, 1.1 e 1.2, con 1.2 che è l';ultima versione di spedizione. È possibile aggiornare gli utenti versione 1.0 alla versione 1.1 con una patch e quindi aggiornare gli utenti versione 1.1 alla versione 1.2 con un';altra patch. In alternativa, è possibile aggiornare entrambi gli utenti versione 1.0 e 1.1 alla versione 1.2 con un aggiornamento cumulativo che aggiorna entrambe le versioni, senza dover passare da 1,0 a 1,1 prima.
Per testare questa idea, definire altri due pacchetti di aggiornamento per l';applicazione. Chiama uno dei pacchetti Aggiornamento consigliato per la versione 1.1 e gli altri aggiornamenti cumulativi per 1.0 e 1.1. Compilare i campi all';interno della finestra di dialogo del pacchetto di aggiornamento di conseguenza per ciascun aggiornamento, quindi il progettista di Update Pack si presenta come sopra.
Ora hai finito di descrivere gli aggiornamenti atomici disponibili per il tuo prodotto.
Versioni del prodotto da aggiornare
Il prossimo passo è definire le versioni del tuo prodotto che sono già in uso dalla tua base di clienti e che sono il target degli aggiornamenti. Segui questi passi:
1. Nella scheda Progettazione, nel gruppo Visualizzazioni, fare clic sul pulsante Aggiornamenti Web. Scegli la vista design Versioni sotto l';intestazione Aggiornamenti Web.
2. Fare clic sul pulsante Aggiungi nella finestra di dialogo Versioni per definire una versione del prodotto da aggiornare. Viene visualizzata la finestra di dialogo Nuova versione dell';applicazione.
Uno per uno, immettere il numero di versione di ciascun prodotto da aggiornare, utilizzando questa finestra di dialogo. Continuando con il nostro esempio precedente, utilizzare questa finestra di dialogo tre volte per definire i numeri di versione 1.0, 1.1 e 1.2 per il prodotto.
È importante notare che i numeri di versione immessi in questa finestra di dialogo devono corrispondere esattamente ai numeri di versione utilizzati per i programmi di installazione del prodotto. Per rivedere il numero di versione che si sta utilizzando nel progetto di installazione corrente, fare clic sul pulsante InstallAware e selezionare Impostazioni progetto per visualizzare la finestra di dialogo Opzioni progetto. La pagina Progetto di questa finestra di dialogo mostra il numero di versione che stai utilizzando, elencato nel campo Versione prodotto:
Ad esempio, se la versione del prodotto che si desidera aggiornare è stata definita come 3.14.15926 nella finestra di dialogo Opzioni progetto, utilizzare lo stesso numero esatto nella finestra di dialogo Nuova versione dell';applicazione. L';utilizzo di numeri di versione che non corrispondono esattamente interromperà il collegamento tra gli aggiornamenti e i prodotti per cui sono destinati.
Associazione dei pacchetti di aggiornamento alle versioni del prodotto
L';ultimo passaggio consiste nel collegare gli aggiornamenti con i prodotti già distribuiti sul campo. Questo viene fatto attraverso un';interfaccia point-and-click:
1. Mentre sei ancora nel designer di Versioni, seleziona una versione del prodotto sotto l';intestazione Versioni applicazione. InstallAware elenca tutti i pacchetti di aggiornamento definiti in precedenza a destra della versione del prodotto, sotto l';intestazione Update Packs Served for Selected Version.
2. Controllare ciascun aggiornamento che si desidera pubblicare per la versione del prodotto selezionata. È possibile controllare uno o più aggiornamenti per ciascuna versione, a seconda degli aggiornamenti applicabili a tale versione. Se non sono disponibili aggiornamenti per quella versione (ovvero, la versione che hai selezionato è la più recente), non fare alcuna selezione o cancellare eventuali segni di spunta esistenti se ci sono state selezioni precedenti.
Per modificare l';ordine di installazione degli aggiornamenti, utilizzare i pulsanti freccia su / giù riportati a destra dell';elenco dei pacchetti di aggiornamento.
3. Ripetere i passaggi 1-2 sopra per ogni versione del prodotto definita. Questo completa l';associazione delle versioni del prodotto con i relativi aggiornamenti applicabili!
Going Live with Updates
InstallAware registra tutto il lavoro svolto nelle viste di progettazione di Update Packs e versioni dell';IDE in un file denominato updates.ini. Questo file si trova all';interno della cartella del progetto principale (viene anche copiato automaticamente nella cartella di output della build ogni volta che si esegue una build). Passare alla cartella del progetto e aprire questo file nel Blocco note di Windows per vedere come appare:
Come puoi vedere, il file updates.ini è un file di testo semplice nel formato file INI che descrive ogni aggiornamento disponibile, fedele ai dati inseriti visivamente utilizzando l';IDE InstallAware. È possibile modificare direttamente questo file in Blocco note e l';IDE InstallAware rifletterà le modifiche. È inoltre possibile aggiungere campi personalizzati a questo file, soprattutto nei casi in cui è necessario disporre di un controllo più preciso su quali aggiornamenti sono offerti a chi dei propri utenti finali. Ovviamente, l';IDE InstallAware non sarà in grado di rappresentare visivamente i tuoi dati personalizzati, ma li conserverà.
Il file updates.ini è completamente indipendente dal resto del progetto di installazione; infatti non è nemmeno incluso nel tuo file setup.exe quando fai una compilazione. Qualsiasi configurazione in cui il client di aggiornamento Web è abilitato tenterà di leggere questo file dall';URL specificato nel campo Monitor URL, trovato nella vista di progettazione Proprietà progetto dell';IDE. Sei libero di rinominare questo file con qualsiasi nome ed estensione personalizzati. Finché l';URL specificato nel campo Monitor URL corrisponde esattamente alla posizione del file INI, verrà scaricato ed elaborato correttamente.
Notare che il campo Monitor URL nella finestra di dialogo Proprietà progetto imposta effettivamente la variabile di compilazione # UPDATE_SERVER #, che lo script MSIcode del client di aggiornamento utilizza in fase di esecuzione per determinare dove scaricare il file updates.ini da.
Come tutte le altre variabili del compilatore, questo valore può anche essere modificato nella pagina Variabili del compilatore della finestra di dialogo Opzioni progetto.
Una volta caricato il file updates.ini nella posizione corretta, insieme ai programmi di installazione degli aggiornamenti a cui fanno riferimento gli Update Pack, i tuoi aggiornamenti sono attivi! I client di aggiornamento per le installazioni sul campo rileveranno, scaricheranno e installeranno automaticamente gli aggiornamenti in base alla pianificazione e alle preferenze degli utenti finali.
Scenari di distribuzione
Invocazione manuale del client di aggiornamento
Come spiegato in precedenza, il client di aggiornamento non è separato dal file setup.exe effettivo che installa il prodotto? ma una parte incorporata di esso. Il programma di installazione determina se è in esecuzione in modalità client di aggiornamento in base agli switch della riga di comando passati a esso e si dirama di conseguenza nello script del client di aggiornamento per lo script di configurazione principale.
Il comportamento predefinito del client di aggiornamento, che è possibile personalizzare liberamente modificando i sorgenti MSIcode dello script di aggiornamento, è il seguente:
1. Dopo che l';applicazione è stata installata correttamente, al prossimo accesso dell';utente, un messaggio di messaggio chiede all';utente finale di scegliere una pianificazione per il controllo degli aggiornamenti per la propria applicazione.
2. L';utente fa doppio clic sull';icona del fumetto del messaggio nella barra delle applicazioni per visualizzare la procedura guidata di pianificazione degli aggiornamenti. L';utente sceglie un programma (giornaliero / settimanale) per verificare la presenza di aggiornamenti, insieme alle preferenze predefinite per scaricare / installare automaticamente gli aggiornamenti (o viene richiesto per ogni aggiornamento trovato). L';utente immette anche le proprie credenziali di accesso per abilitare l';attività pianificata di Windows che InstallAware creerà sul sistema per il processo di aggiornamento.
3. InstallAware crea un';attività pianificata in Windows per eseguire setup.exe in modalità client di aggiornamento all';ora pianificata sotto l';account utente specificato. InstallAware registra anche le preferenze di download / installazione degli aggiornamenti dell';utente finale (automatico / manuale).
4. All';ora pianificata, il motore di pianificazione attività di Windows avvia l';installazione in modalità client di aggiornamento. Il client di aggiornamento controlla silenziosamente gli aggiornamenti. Se non vengono trovati aggiornamenti, il client di aggiornamento si chiude silenziosamente. Se gli aggiornamenti sono disponibili, il client di aggiornamento scarica / installa gli aggiornamenti, automaticamente o con l';approvazione dell';utente in base alle preferenze impostate durante la pianificazione dell';aggiornamento originale.
5. Il client di aggiornamento non viene eseguito in qualsiasi momento in background come servizio. Funziona solo all';ora pianificata e rimane in memoria solo durante il download / installazione degli aggiornamenti. Ciò consente di risparmiare risorse di sistema riducendo allo stesso tempo la superficie di attacco sul sistema dell';utente finale.
Il client di aggiornamento può anche essere richiamato manualmente, dalla riga di comando o in modo programmatico dall';applicazione, semplicemente eseguendo il file setup.exe con i parametri della riga di comando corretti. La posizione del client di aggiornamento (il file setup.exe) e le opzioni della riga di comando che attivano le varie modalità client di aggiornamento sono illustrate di seguito.
Si noti che l';applicazione deve essere già stata installata prima che gli aggiornamenti possano essere programmati o controllati. Non richiamare la configurazione con i parametri della riga di comando descritti di seguito prima che l';applicazione sia stata installata.
Determinazione della posizione del client di aggiornamento
Per un look di installazione di Tutti gli utenti sotto la seguente chiave di registro:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionUninstall
Per un';installazione Just Me, guarda sotto la seguente chiave di registro:
HKEY_CURRENT_USERSOFTWAREMicrosoftWindowsCurrentVersionUninstall
In entrambi i casi, leggere i dati per il valore della stringa UninstallString. Un valore tipico per questa stringa è:
:C: Documents and SettingsApplication Data.exe: REMOVE = TRUE MODIFY = FALSE
Analizza questa stringa nell';applicazione per rimuovere i parametri della riga di comando REMOVE = TRUE MODIFY = FALSE e le doppie virgolette che circondano la stringa principale. La stringa finale che indica la posizione del client di aggiornamento (così come il tuo programma di installazione) dovrebbe essere di questo formato:
C: Documents and SettingsApplication Data.exe
Pianificazione di aggiornamenti periodici
La riga di comando passa a mettere setup.exe nella modalità di pianificazione degli aggiornamenti è / updatesetup. Questo switch della riga di comando può anche essere riutilizzato dopo che gli aggiornamenti sono già stati programmati per modificare la pianificazione e le preferenze degli aggiornamenti esistenti.
Si noti che il processo di pianificazione degli aggiornamenti determina anche cosa fare quando vengono trovati gli aggiornamenti? gli utenti finali possono scegliere tra scaricare / installare automaticamente gli aggiornamenti disponibili o approvare manualmente il download e l';installazione di ogni singolo aggiornamento trovato. Anche se non si intende offrire aggiornamenti per gli utenti finali in base a una pianificazione prestabilita, è comunque necessario eseguire setup.exe almeno una volta con il parametro della riga di comando / updatesetup per garantire l';inizializzazione di queste importanti preferenze di installazione degli aggiornamenti. L';esecuzione del client di aggiornamento per scaricare e installare gli aggiornamenti senza questa pre-inizializzazione può provocare errori di runtime dovuti a variabili di script di aggiornamento non inizializzate, che vengono inizializzate durante la fase di pianificazione dell';aggiornamento.
È possibile forzare tale preinizializzazione direttamente dallo script di configurazione principale, subito dopo aver completato l';installazione del prodotto, attenendosi alla seguente procedura:
1. Nell';IDE InstallAware, passare alla scheda MSIcode.
2. Nell';editor MSIcode, scegli lo script di configurazione principale, che è la pagina immediatamente a destra della pagina di benvenuto.
3. Nel menu a discesa di navigazione del codice sinistro, situato direttamente sopra lo script MSIcode, selezionare la categoria Commenti.
4. Nel menu a discesa di navigazione del codice corretto, selezionare il comando TO-DO: Inserisci che avvia l';applicazione qui commento. Questo sposta l';editor MSIcode nella parte dello script che viene eseguita dopo un';installazione dell';applicazione corretta (e mai dopo un';installazione annullata o una disinstallazione, che non è ciò che vorremmo).
5. Trascinare e rilasciare o digitare il comando Esegui codice MSIcode nell';area evidenziata dello script MSIcode e configurare la finestra di dialogo Esegui programma come nell';immagine seguente:
6. Fare clic su OK, che inserisce questo comando Esegui programma nello script MSIcode. Questo nuovo comando Esegui programma utilizza la variabile $ EXEFILE $ predefinita per risolvere automaticamente il percorso del file setup.exe in fase di esecuzione e riesegue l';installazione in modalità non presidiata in modalità di pianificazione degli aggiornamenti immediatamente dopo un';installazione corretta dell';applicazione.
7. Salvare e ricostruire il progetto di installazione per applicare le modifiche.
Questa routine di preinizializzazione elimina la necessità per gli utenti finali di selezionare una pianificazione di aggiornamento durante il successivo accesso e consente inoltre di richiamare direttamente setup.exe per verificare gli aggiornamenti in qualsiasi momento dall';applicazione.
Controllo a livello di codice per gli aggiornamenti
La riga di comando passa a mettere setup.exe nella modalità di controllo degli aggiornamenti è / update. Questa opzione della riga di comando può essere utilizzata per verificare gli aggiornamenti a livello di codice dall';interno dell';applicazione. È possibile combinare questa opzione con il parametro della riga di comando dell';installazione silenziosa / s per scaricare e installare automaticamente gli aggiornamenti rilevati.
Assicurarsi che setup.exe sia stato eseguito almeno una volta con il parametro / updatesetup prima di utilizzare questa opzione della riga di comando, come descritto sopra.
Restituzione dei codici di uscita dal client di aggiornamento
Quando si richiama il client di aggiornamento dalla propria applicazione e, in particolare, se si esegue il client di aggiornamento in modo invisibile all';utente, potrebbe essere opportuno ottenere informazioni sul fatto che il client abbia trovato eventuali aggiornamenti, installati correttamente e così via. È possibile facilitare ciò modificando lo script di aggiornamento e utilizzando il comando MSIcode Termina con codice di uscita, anziché il comando di terminazione standard di installazione utilizzato dallo script di aggiornamento incorporato per uscire dopo aver terminato l';esecuzione come client di aggiornamento.
Cerca semplicemente il vecchio comando e sostituiscilo con il nuovo comando, insieme ai tuoi codici di uscita definiti dall';utente:
1. Nell';IDE InstallAware, passare alla scheda MSIcode.
2. Scegli lo script di aggiornamento.
3. Nella scheda MSIcode, nel gruppo Modifica, fare clic sul pulsante Trova. Cerca il testo Termina installazione.
4. Sostituire ciascuna istanza trovata del comando Termina installazione con il comando Termina con codice di uscita utilizzando l';editor MSIcode.
Per comodità, di seguito sono riportati alcuni snippet di codice copiati dallo script di aggiornamento standard, con i commenti inseriti che evidenziano il significato di ciascun punto di terminazione:
se Variable WIZARD è uguale a CANCEL
Terminare l';installazione
// installazione annullata dall';utente annullata
altro
?
Terminare l';installazione
// aggiorna la pianificazione completata con successo
FINE REGIONE Modalità di aggiornamento
se la variabile UPDATE_GET_INI non è uguale a SUCCESSO
Terminare l';installazione
// update server è offline
fine
se Variabile UPDATE_AVAILABLE è uguale
Terminare l';installazione
// nessun aggiornamento trovato per prodotto
fine
se Variabile ABORT è uguale a TRUE
Terminare l';installazione
// utente ha interrotto l';installazione dell';aggiornamento
fine
?
Terminare l';installazione
// aggiornamenti installati correttamente
END REGION Scarica e installa gli aggiornamenti
5. Si consiglia inoltre di sostituire il comando Riavvia il computer trovato una volta nello script degli aggiornamenti con un comando Termina con codice di uscita. Soprattutto quando si esegue in modo silenzioso, probabilmente non si desidera riavviare il computer senza l';approvazione dell';utente finale.
Si noti che non esiste una regola predeterminata su quali codici di uscita utilizzare con il comando Termina con codice di uscita. Mentre 0 è utilizzato universalmente come codice di uscita che indica :successo:, tutti gli altri codici di uscita hanno significati dipendenti dall';applicazione. È sufficiente definire i propri codici di uscita e controllarli dalla propria applicazione richiamando il client di aggiornamento. I codici di uscita di esempio potrebbero essere 1 per l';interruzione dell';utente, 2 per il server di aggiornamento non disponibile, 3 per gli aggiornamenti non trovati, 4 per il riavvio richiesto e, naturalmente, 0 per un';operazione corretta. Quando si definiscono i codici di uscita personalizzati, tenere presente che Windows consente solo codici di uscita numerici.
È inoltre importante notare che il client di aggiornamento non controlla i codici di uscita restituiti dal programma di installazione dell';aggiornamento effettivo (la configurazione completa effettiva, la patch o il programma personalizzato che applica l';aggiornamento sul sistema). È possibile che si desideri restituire codici di uscita specifici dal programma di installazione dell';aggiornamento stesso e controllare tali codici di ritorno subito dopo che il programma di esecuzione termina l';esecuzione del programma di installazione dell';aggiornamento nello script degli aggiornamenti MSIcode.
Implementazione di filtri di aggiornamento personalizzati
Potresti voler pubblicare aggiornamenti solo per utenti qualificati? per esempio, gli utenti che fanno parte di un piano di abbonamento con la tua azienda. In alternativa, potresti avere più edizioni del tuo prodotto e potresti dover qualificare la disponibilità di aggiornamenti non solo in base alla versione del prodotto, ma anche su parametri aggiuntivi, come ad esempio la lingua del prodotto. InstallAware semplifica l';aggiunta di filtri di aggiornamento personalizzati al client di aggiornamento standard, poiché si dispone già delle origini complete dello script di aggiornamento MSIcode.
In questa sezione, implementeremo un filtro basato sulla lingua per illustrare come perfezionare la distribuzione degli aggiornamenti del prodotto utilizzando il client di aggiornamento InstallAware predefinito. In base a questo esempio, è possibile aggiungere ulteriori qualificatori personalizzati al processo di aggiornamento, ad esempio convalida seriale, convalida dell';abbonamento e così via.
Estensione delle definizioni del pacchetto di aggiornamento
Attenersi alla seguente procedura per aggiungere un qualificatore personalizzato alle definizioni del pacchetto di aggiornamento esistente:
1. Aprire il file updates.ini creato nella prima parte di questo documento utilizzando il Blocco note di Windows. Questo file INI si trova nella cartella del progetto di installazione.
2. Individuare la sezione del file INI creata per il primo pacchetto di aggiornamento. Questa sezione del file INI inizia con la riga [Aggiornamento consigliato per la versione 1.0]. Aggiungi una nuova voce di file INI in questa sezione: Languages = English.
3. Individuare la sezione del file INI creata per il secondo pacchetto di aggiornamento. Questa sezione del file INI inizia con la riga [Aggiornamento consigliato per la versione 1.1]. Aggiungi una nuova voce di file INI in questa sezione: Languages = German.
4. Individuare la sezione del file INI creata per l';ultimo pacchetto di aggiornamento. Questa sezione del file INI inizia con la riga [Aggiornamenti cumulativi per 1.0 e 1.1]. Aggiungi una nuova voce di file INI in questa sezione: Lingue = inglese, tedesco.
5. Salvare le modifiche nel file INI e caricarle sul server web.
Ora è stato aggiunto un nuovo qualificatore di lingue a ciascuna dichiarazione di Update Pack. Il client di aggiornamento può ora essere esteso per accedere a queste informazioni durante la lettura e l';analisi del file updates.ini.
Estensione del client di aggiornamento
Per estendere il client di aggiornamento, personalizzare le origini MSIcode dello script di aggiornamento, aggiungendo la logica di filtraggio nello script predefinito. Per mantenere questo documento semplice, le modifiche apportate di seguito saltano installando aggiornamenti non qualificati, avvisando l';utente finale con una finestra di messaggio. Un';implementazione più avanzata può nascondere completamente gli aggiornamenti non qualificati dall';elenco degli aggiornamenti disponibili.
1. Nell';IDE InstallAware, passare alla scheda MSIcode. Scegli lo script degli aggiornamenti.
2. Nella scheda MSIcode, nel gruppo Modifica, fare clic sul pulsante Trova. Cerca il testo Esegui programma $ SUPPORTDIR $. Questa è la parte dello script di aggiornamento che esegue il programma di installazione dell';aggiornamento.
3. Trascinare e rilasciare o digitare il comando Ottieni impostazioni file INI in MSIcode nell';area evidenziata dello script MSIcode e configurare la finestra di dialogo Ottieni impostazioni file INI come nella seguente schermata:
4. Ora inserisci un comando If MSIcode dopo il comando Ottieni impostazioni file INI, configurato in questo modo:
5. Inserisci un comando Else subito dopo il comando Esegui programma.
6. Inserire un comando MessageBox dopo il comando Else, configurato come segue:
7. Inserisci un comando Fine dopo il comando MessageBox, chiudendo la clausola condizionale avviata in precedenza con il comando If.
8. Ricordarsi di salvare tutte le modifiche e ricostruire la configurazione.
Dopo aver completato i passaggi precedenti, lo script MSIcode dovrebbe apparire come segue:
Ottieni valore $ INI $ SUPPORTDIR $ updates.ini, [$ UPDATE_NAME $] ?
se Variabile UPDATE_QUALIFIED contiene $ LANGUAGE $
Esegui il programma $ SUPPORTDIR $$ UPDATE_NAME $ .exe ?
altro
MessageBox: $ TITLE $ Updates, $ TITLE $ Updates non può essere installato ?
fine
Nello script precedente, Ottieni le impostazioni del file INI prima legge dal file INI (che abbiamo aggiornato nella sezione precedente) l';elenco delle lingue consentite per l';aggiornamento e memorizza l';elenco nella variabile $ UPDATE_QUALIFIED $. Se poi prova per vedere se la variabile $ UPDATE_QUALIFIED $ contiene la lingua che valuta la variabile predefinita $ LANGUAGE $? questa variabile predefinita valuta sempre il nome inglese della lingua in cui è in esecuzione l';installazione. Se la valutazione è positiva, l';aggiornamento viene installato utilizzando Run Program, altrimenti MessageBox notifica all';utente finale che questo aggiornamento non è applicabile al proprio sistema.
Ad esempio, per il pacchetto di aggiornamento [Aggiornamenti cumulativi per 1.0 e 1.1] e una lingua inglese, la variabile $ UPDATE_QUALIFIED $ valuterà la stringa letterale inglese, tedesco, e la variabile $ LANGUAGE $ valuterà la stringa letterale inglese . Pertanto, poiché la stringa più grande inglese, tedesco contiene la stringa più piccola inglese, l';aggiornamento viene applicato.
Questo completa il processo di implementazione di un filtro aggiuntivo per gli aggiornamenti di prodotto idonei. In sole 5 righe di codice, hai personalizzato il comportamento del client di aggiornamento pre-costruito per i tuoi requisiti personalizzati.
Risorse addizionali
Visitare la sezione delle pubblicazioni del sito Web InstallAware al seguente URL per ulteriori informazioni sulle tecnologie InstallAware:
http://www.installaware.com/home/publications.asp
I white paper che forniscono un';analisi approfondita delle tecnologie di scripting e web deployment di InstallAware, nonché una guida per il revisore, sono disponibili all';URL sopra.