Esporta (0) Stampa
Espandi tutto

Come creare un file XML personalizzato

Si applica a: Windows Vista

In questo argomento

È possibile creare file XML personalizzati in modo da adattare la migrazione alle specifiche esigenze aziendali, ad esempio migrare una determinata applicazione line-of-business o modificare il comportamento predefinito della migrazione. Affinché ScanState e LoadState possano utilizzare questi file, è necessario specificarli nelle righe di comando di entrambe le utilità.

Requisiti di un file XML

I file XML personalizzati devono essere conformi ai seguenti requisiti:

  • Il file deve essere in formato UTF-8 (Unicode Transformation Format-8). È necessario salvare il file in questo formato e specificare <?xml version="1.0" encoding="UTF-8"?> all'inizio di ogni file XML.

  • Nel file è necessario specificare un attributo urlid univoco per l'elemento migration. L'attributo urlid di ogni file specificato nella riga di comando deve essere univoco. Se due file XML di migrazione dispongono dello stesso attributo urlid, il secondo file XML specificato nella riga di comando non verrà elaborato, in quanto USMT (User State Migration Tool, Utilità di migrazione stato utente) utilizza tale attributo per definire i componenti all'interno del file. Ad esempio, all'inizio di ogni file è necessario specificare quanto riportato di seguito:

    <?xml version="1.0" encoding="UTF-8"?>
    <migration urlid="http://www.microsoft.com/migration/1.0/migxmlext/<CustomFileName>">
    
  • Per poter apparire nel file Config.xml, ogni componente del file deve avere un nome visualizzato, in quanto Config.xml definisce i componenti in base al nome visualizzato e all'attributo urlid per l'elemento migration. Ad esempio, specificare <displayName>My Application</displayName>.

Per alcuni esempi di file XML personalizzati, vedere Esempi XML.

Procedure consigliate

  • Il nome file personalizzato <CustomFileName> nell'attributo urlid per l'elemento migration deve corrispondere al nome del file. Benché non sia un requisito, è consigliabile che <CustomFileName> corrisponda al nome del file. L'esempio seguente riguarda il file MigApp.xml:

    <?xml version="1.0" encoding="UTF-8"?>
    <migration urlid="http://www.microsoft.com/migration/1.0/migxmlext/migapp">
    
  • Utilizzare lo schema XML (MigXML.xsd) per scrivere e convalidare i file XML di migrazione.

  • Utilizzare i file XML di migrazione predefiniti come modelli.Per creare un file XML personalizzato, è possibile utilizzare i file XML di migrazione come modelli. Per eseguire la migrazione dei file dei dati dell'utente, creare il file XML personalizzato utilizzando il modello MigUser.xml; per eseguire la migrazione delle impostazioni del sistema operativo a un computer che esegue Windows XP, creare il file XML personalizzato utilizzando il modello MigSys.xml. Infine, per eseguire la migrazione delle impostazioni delle applicazioni, iniziare con MigApp.xml.

  • È consigliabile creare un file XML separato anziché aggiungere il codice XML personalizzato a uno dei file XML di migrazione esistenti.Ad esempio, se il codice esegue la migrazione delle impostazioni di un'applicazione, è consigliabile non aggiungere tale codice a MigApp.xml, poiché quest'ultimo è un file molto grande e sarà difficile da leggere o modificare. Inoltre, se per un motivo qualsiasi si reinstalla USMT, MigApp.xml verrà sovrascritto dalla versione predefinita del file e la versione personalizzata andrà perduta.

  • Se il computer di destinazione esegue Windows Vista, è consigliabile non creare file XML personalizzati per modificare le impostazioni del sistema operativo migrate. Queste impostazioni vengono migrate dai manifesti, che non sono modificabili. In questo scenario, se si decide di escludere dalla migrazione determinate impostazioni del sistema operativo, sarà necessario creare e modificare un file Config.xml.

  • È possibile utilizzare il carattere jolly asterisco (*) in qualsiasi file XML di migrazione creato. Non è tuttavia possibile utilizzare il punto interrogativo come carattere jolly nei file XML.

Creazione di un file XML per la migrazione delle impostazioni di un'applicazione

Nel resto di questo argomento viene illustrata la procedura di creazione di un file XML personalizzato da seguire per migrare le impostazioni di un'applicazione di cui USMT non esegue la migrazione per impostazione predefinita. È consigliabile eseguire la migrazione di queste impostazioni dopo aver installato l'applicazione, ma prima che l'utente la esegua per la prima volta. In questo modo nel computer di destinazione non sarà presente alcuna impostazione al momento della migrazione.

In questo argomento viene descritta la modalità di migrazione delle applicazioni che memorizzano le impostazioni in file o nel Registro di sistema e non di quelle che memorizzano tali informazioni in un archivio specifico delle applicazioni. Inoltre, in questo argomento non vengono fornite informazioni sulla modalità di migrazione dei dati che gli utenti creano utilizzando l'applicazione. Ad esempio, se l'applicazione crea file DOC utilizzando un modello specifico, non verrà descritta la modalità di migrazione dei file DOC e dei modelli.

Requisiti preliminari

Innanzitutto, è necessario creare un computer di test contenente il sistema operativo dei computer di origine e l'applicazione di cui si desiderano migrare le impostazioni. Ad esempio, se si pianifica di eseguire la migrazione da Windows XP a Microsoft Windows Vista, installare Windows XP nel computer di test, quindi installare l'applicazione.

Passaggio 1: verificare che l'applicazione sia installata e che sia la versione corretta

Prima che USMT esegua la migrazione delle impostazioni, è necessario fare in modo che controlli se l'applicazione è installata nel computer e se è la versione corretta. Se l'applicazione non è installata nel computer di origine, la ricerca delle impostazioni dell'applicazione è un'operazione non solo superflua, ma anche svantaggiosa, dal momento che se USMT raccoglie le impostazioni di un'applicazione che non è installata, ne potrebbe eseguire la migrazione, con conseguente malfunzionamento del computer di destinazione. È necessario inoltre controllare se sono presenti più versioni dell'applicazione, in quanto le impostazioni della nuova versione potrebbero non essere memorizzate nella stessa posizione. Ciò potrebbe causare risultati inaspettati nel computer di destinazione.

Esistono molti modi per rilevare se un'applicazione è installata. È consigliabile controllare la presenza di un codice di disinstallazione dell'applicazione nel Registro di sistema ed eseguire la ricerca nel computer del file eseguibile che ha installato l'applicazione. È importante eseguire entrambe le operazioni, poiché versioni diverse della stessa applicazione condividono talvolta lo stesso codice di disinstallazione. Pertanto, anche se il codice è presente, potrebbe non corrispondere alla versione dell'applicazione desiderata.

Controllare se nel Registro di sistema è presente un codice di disinstallazione dell'applicazione

Quando sono installate molte applicazioni, soprattutto se sono state installate utilizzando la tecnologia Windows Installer (MSI), viene creato un codice di disinstallazione dell'applicazione in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. Ad esempio, quando si installa Adobe Acrobat Reader 7, viene creato un codice denominato HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall \{AC76BA86-7AD7-1033-7B44-A70000000000}. Pertanto, se un computer contiene questo codice, significa che Adobe Acrobat Reader 7 è installato sul computer. È possibile controllare la presenza di una chiave del Registro di sistema utilizzando la funzione di supporto DoesObjectExist.

È possibile in genere individuare questa chiave mediante la ricerca del nome dell'applicazione, del nome del file eseguibile dell'applicazione o del nome del produttore dell'applicazione in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. È possibile utilizzare l'Editor del Registro di sistema (Regedit.exe, che si trova in %RadiceSistema%) per eseguire la ricerca nel Registro di sistema.

Controllare se nel file system è presente il file eseguibile dell'applicazione

È necessario inoltre controllare se nei binari dell'applicazione è presente l'eseguibile che ha installato l'applicazione. A tal fine, è necessario innanzitutto determinare la posizione in cui è installata l'applicazione e il nome dell'eseguibile. La maggior parte delle applicazioni memorizza il percorso di installazione dei binari dell'applicazione nel Registro di sistema. Nel Registro di sistema, eseguire la ricerca del nome dell'applicazione, del nome dell'eseguibile dell'applicazione o del nome del produttore dell'applicazione fino a individuare il valore del Registro di sistema contenente il percorso di installazione. Una volta individuato il percorso dell'eseguibile dell'applicazione, è possibile utilizzare la funzione di supporto DoesFileVersionMatch per controllare la correttezza della versione dell'eseguibile dell'applicazione. Per un esempio di esecuzione di questa operazione, consultare la sezione MSN Messenger di MigApp.xml.

Passaggio 2: identificare le impostazioni da raccogliere e la relativa posizione di memorizzazione nel computer

Quindi, analizzare l'interfaccia utente e stilare un elenco di tutte le impostazioni disponibili. È possibile limitare l'elenco se sono presenti impostazioni di cui non si desidera eseguire la migrazione. Per determinare la posizione in cui è memorizzata ogni impostazione, è necessario modificare ogni impostazione e monitorare l'attività nel Registro di sistema e nel file system. Non è necessario eseguire la migrazione dei file binari e delle impostazioni del Registro di sistema creati durante l'installazione dell'applicazione, poiché sarà necessario reinstallare l'applicazione nel computer di destinazione. È necessario eseguire la migrazione soltanto delle applicazioni personalizzabili.

Per determinare la posizione di memorizzazione di ogni impostazione
  1. Scaricare uno strumento di monitoraggio del Registro di sistema e dei file, ad esempio gli strumenti Regmon e Filemon dal sito Web Sysinternals (http://go.microsoft.com/fwlink/?linkid=36109).

  2. Arrestare quante più applicazioni possibile per limitare l'attività del Registro di sistema e del file system nel computer.

  3. Filtrare l'output degli strumenti in modo da visualizzare soltanto le modifiche apportate dall'applicazione.

    noteNota
    Le impostazioni della maggior parte delle applicazioni sono memorizzate nel profilo utente. Ciò significa che le impostazioni memorizzate nel file system si trovano nella directory %ProfiloUtente% e le impostazioni memorizzate nel Registro di sistema si trovano nell'hive HKEY_CURRENT_USER. Per queste applicazioni, è possibile filtrare l'output degli strumenti di monitoraggio dei file e del Registro di sistema per mostrare l'attività soltanto di questi percorsi. In questo modo si riduce considerevolmente la quantità di output da esaminare.

  4. Avviare gli strumenti di monitoraggio, modificare un'impostazione e cercare le scritture nel file system e nel Registro di sistema che hanno avuto luogo al momento dell'applicazione di tale modifica. Assicurarsi che le modifiche apportate abbiano effetto. Ad esempio, se si modifica un'impostazione in Microsoft Word selezionando una casella di controllo nella finestra di dialogo Opzioni, la modifica in genere non avrà effetto fino a quando non si chiude la finestra di dialogo facendo clic su OK.

  5. Quando l'impostazione è stata modificata, controllare le modifiche apportate al file system e al Registro di sistema. Potrebbero esserci più file o valori del Registro di sistema per ogni impostazione. Identificare l'insieme minimo di modifiche ai file e al Registro di sistema richieste per modificare questa impostazione. Per poter migrare l'impostazione, sarà necessario eseguire la migrazione di questo insieme di file e di chiavi del Registro di sistema.

    noteNota
    La modifica dell'impostazione di un'applicazione comporta sempre la scrittura nelle chiavi del Registro di sistema. Se possibile, filtrare l'output dello strumento di monitoraggio dei file e del Registro di sistema per visualizzare soltanto le scritture nei file e nelle chiavi/valori del Registro di sistema.

Passaggio 3: identificare la modalità di applicazione delle impostazioni raccolte

Se la versione dell'applicazione nel computer di origine è la stessa di quella nel computer di destinazione, non è necessario modificare i file e le chiavi del Registro di sistema raccolti. Per impostazione predefinita, USMT esegue la migrazione dei file e delle chiavi del Registro di sistema dal percorso di origine al percorso corrispondente nel computer di destinazione. Ad esempio, se un file viene raccolto dalla cartella C:\Documents and Settings\Utente1\Documenti e la directory del profilo nel computer di destinazione si trova in D:\Utenti\Utente1, USMT eseguirà automaticamente la migrazione del file a D:\Utenti\Utente1\Documenti. È tuttavia necessario modificare il percorso di alcune impostazioni nei tre casi seguenti:

Caso 1: la versione dell'applicazione nel computer di destinazione è più recente rispetto a quella nel computer di origine.

In questo caso, la versione più recente dell'applicazione potrebbe essere in grado di leggere le impostazioni del computer di origine senza modifiche. Ciò significa che i dati raccolti da una versione precedente dell'applicazione sono talvolta compatibili con la versione più recente. Potrebbe essere tuttavia necessario modificare il percorso delle impostazioni se una delle due seguenti condizioni è vera:

  • La versione più recente dell'applicazione dispone della capacità di importazione delle impostazioni da una versione precedente. Questo mapping si verifica in genere la prima volta che un utente esegue la versione più recente dopo la migrazione delle impostazioni. Alcune applicazioni eseguono questa operazione automaticamente una volta migrate le impostazioni, altre invece la eseguono soltanto se sono state aggiornate dalla versione precedente. Ciò avviene perché, quando l'applicazione viene aggiornata, viene installato un insieme di file e/o chiavi del Registro di sistema che indicano che la versione precedente dell'applicazione era già installata. Quando si esegue un'installazione pulita della versione più recente (nella maggior parte delle migrazioni), il computer non contiene questo insieme di file e di chiavi del Registro di sistema, pertanto il mapping non viene eseguito. Al fine di indurre la versione più recente dell'applicazione ad avviare questo processo di importazione, lo script di migrazione potrebbe richiedere la creazione di questi file e/o chiavi del Registro di sistema nel computer di destinazione.

    Per identificare i file e/o i valori o chiavi del Registro di sistema che è necessario creare per avviare l'importazione, è necessario eseguire l'aggiornamento della versione precedente all'ultima versione e monitorare le modifiche apportate al file system e al Registro di sistema utilizzando lo stesso processo descritto in Per determinare la posizione di memorizzazione di ogni impostazione. Una volta noto l'insieme di file necessari al computer, è possibile utilizzare l'elemento <addObjects> per aggiungerli al computer di destinazione.

  • La versione più recente dell'applicazione non è in grado di leggere le impostazioni dal computer di origine, né di importare le impostazioni nel nuovo formato. In questo caso, è necessario creare un mapping per ogni impostazione dai vecchi ai nuovi percorsi. A tal fine, determinare la posizione in cui la versione più recente memorizza tutte le impostazioni utilizzando il processo descritto in Per determinare la posizione di memorizzazione di ogni impostazione. Dopo aver creato il mapping, applicare le impostazioni al nuovo percorso nel computer di destinazione utilizzando l'elemento <locationModify> e le funzioni di supporto ExactMove e RelativeMove.

Caso 2: il computer di destinazione contiene già le impostazioni dell'applicazione.

È consigliabile eseguire la migrazione di queste impostazioni dopo aver installato l'applicazione, ma prima che l'utente la esegua per la prima volta. In questo modo nel computer di destinazione non sarà presente alcuna impostazione al momento della migrazione. Se è necessario installare l'applicazione prima della migrazione, eliminare tutte le impostazioni esistenti utilizzando l'elemento <destinationCleanup>. Se per un motivo qualsiasi si desidera mantenere le impostazioni presenti nel computer di destinazione, è possibile utilizzare l'elemento <merge> e la funzione di supporto DestinationPriority.

Caso 3: l'applicazione sovrascrive le impostazioni al momento della sua installazione.

È consigliabile eseguire la migrazione di queste impostazioni dopo aver installato l'applicazione, ma prima che l'utente la esegua per la prima volta. In questo modo nel computer di destinazione non sarà presente alcuna impostazione al momento della migrazione. Inoltre, se sono installate determinate applicazioni, queste impostazioni sovrascriveranno quelle già presenti nel computer. In questo scenario, se si esegue la migrazione dei dati prima di avere installato l'applicazione, le impostazioni personalizzate verranno sovrascritte. Ciò si verifica frequentemente con le applicazioni che memorizzano le impostazioni in percorsi all'esterno del profilo utente (tipicamente si tratta delle impostazioni applicabili a tutti gli utenti). Queste impostazioni universali vengono talvolta sovrascritte al momento dell'installazione di un'applicazione e vengono sostituite con i valori predefiniti. Per evitare questo problema, è necessario installare le applicazioni prima di eseguire la migrazione dei file e delle impostazioni nel computer di destinazione. Per impostazione predefinita con USMT, i dati del computer di origine sovrascrivono i dati già presenti nello stesso percorso nel computer di destinazione.

Passaggio 4: creazione del componente XML di migrazione per l'applicazione

Dopo aver completato i passaggi da 1 a 3, è necessario creare un file XML di migrazione personalizzato che esegue la migrazione dell'applicazione in base alle informazioni correnti. È possibile utilizzare il file MigApp.xml come modello, poiché contiene gli esempi di molti concetti descritti in questo argomento. Per altri esempi di file XML, vedere Esempi XML.

noteNota
È consigliabile creare un file XML separato anziché aggiungere lo script a MigApp.xml, in quanto quest'ultimo è un file molto grande e sarà difficile da leggere e modificare. Inoltre, se per un motivo qualsiasi si reinstalla USMT, MigApp.xml verrà sovrascritto dalla versione predefinita del file e la versione personalizzata andrà perduta.

ImportantImportante
Alcune applicazioni memorizzano informazioni del profilo utente di cui non dovrebbe essere eseguita la migrazione (ad esempio, i percorsi di installazione dell'applicazione, il nome del computer e così via). È necessario assicurarsi di escludere questi file e chiavi del Registro di sistema dalla migrazione.

Lo script deve eseguire le seguenti azioni:

  1. Verificare che l'applicazione sia installata e che sia la versione corretta. Questo controllo può essere eseguito nei seguenti modi:

    • Ricerca del codice di disinstallazione in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall mediante la funzione di supporto DoesObjectExist.

    • Controllo della correttezza della versione del file eseguibile dell'applicazione mediante la funzione di supporto DoesFileVersionMatch.

  2. Se è installata la versione corretta dell'applicazione, verificare che ogni impostazione sia stata migrata al percorso corrispondente nel computer di destinazione.

    • Se le versioni delle applicazioni nei computer di origine e di destinazione sono uguali, eseguire la migrazione di ogni impostazione utilizzando gli elementi <include> ed <exclude>.

    • Se la versione dell'applicazione nel computer di destinazione è più recente rispetto a quella nel computer di origine e l'applicazione non è in grado di eseguire l'importazione delle impostazioni, lo script deve: 1) aggiungere l'insieme di file che attivano l'importazione utilizzando l'elemento <addObjects>, oppure 2) creare un mapping che applica le impostazioni precedenti al percorso corretto nel computer di destinazione utilizzando l'elemento <locationModify> e le funzioni di supporto ExactMove e RelativeMove.

    • Se è necessario installare l'applicazione prima della migrazione delle impostazioni, eliminare tutte le impostazioni già presenti nel computer di destinazione utilizzando l'elemento <destinationCleanup>.

Per informazioni sugli elementi XML, vedere Informazioni di riferimento per gli elementi XML.

Passaggio 5: verifica della migrazione delle impostazioni dell'applicazione

In un computer di test, installare il sistema operativo che verrà installato nei computer di destinazione. Ad esempio, se si pianifica di eseguire la migrazione da Windows XP a Microsoft Windows Vista, installare Microsoft Windows Vista e l'applicazione. Quindi, eseguire LoadState nel computer di test e verificare che tutte le impostazioni vengano migrate. Apportare eventuali correzioni, se necessario, e ripetere la procedura fino a quando tutte le impostazioni necessarie sono state migrate.

Per accelerare i tempi di raccolta e di migrazione dei dati, è possibile migrare un utente alla volta ed escludere tutti gli altri componenti dalla migrazione, ad eccezione dell'applicazione che si sta testando. Per specificare solo Utente1 nella migrazione, digitare: /ue:*\* /ui:utente1. Per ulteriori informazioni, vedere Come escludere file e impostazioni e Opzioni utente. Per risolvere un problema, controllare il registro dello stato e i registri di ScanState e LoadState, che contengono avvisi ed errori che potrebbero rimandare a problemi con la migrazione.

Esempi e informazioni aggiuntive

Il documento è risultato utile?
(1500 caratteri rimanenti)
Grazie per i commenti inviati.

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft