Next Topic

Previous Topic

Book Contents

Find

L'elemento <Find> descrive come determinare se questo pacchetto è applicabile. Se uno dei blocchi <Find/> è in grado di individuare l'eseguibile, questo pacchetto verrà utilizzato.

Soddisfazione

Un blocco <Find/> viene definito soddisfatto se ha trovato l'eseguibile richiesto. Il blocco <Find/> cerca sempre un file su disco con il nome fornito dall'elemento figlio <Name/>. L'elemento <Find/> utilizza i tag <Location/> per determinare dove si trova l'eseguibile. Ciascuno cerca un valore stringa, che viene poi controllato per vedere se punta a un file con il nome appropriato. Se una <Location/> trova un percorso verso un file reale ma il nome di questo file non corrisponde all'elemento <Name/>, il blocco <Find/> non viene soddisfatto. Il blocco è soddisfatto solo se <Location/> trova un percorso che punta a un file con nome appropriato che corrisponde all'elemento <Name/>.

Nomi EXE multipli

Se l'applicazione da migrare può avere diversi nomi (per es. uno per i sistemi a 32 bit, un altro per i sistemi a 64 bit), è necessario specificare diversi blocchi <Find/>, uno per ogni nome:

            <Find>
                <Name>Crunch64.exe</Name>
                <Location Type="file" File="%programfiles%\Crunch\Crunch64.exe" />
                <Location Type="registry" SubType="value">
                    HKCU\Software\Crunch\NativeLocation
                </Location>
            </Find>
            <Find>
                <Name>Crunch32.exe</Name>
                <Location Type="file" File="%programfiles%\Crunch\Crunch32.exe" />
                <Location Type="registry" SubType="value">
                    HKCU\Software\Crunch\NativeLocation
                </Location>
            </Find>

Ordine di valutazione

I blocchi <Find/> vengono valutati in ordine di documento. Il primo viene valutato per primo, il secondo per secondo e così via. Non appena un blocco viene soddisfatto, la valutazione termina; i blocchi seguenti vengono ignorati. Pertanto, se l'eseguibile da trovare è importante, sarà necessario collocare i più desiderabili all'inizio della lista.

Riscontro non necessario

A volte si scrive un pacchetto per qualcosa che si sa sarà sempre presente, per esempio, un componente di sistema o un'applicazione incorporata. In questi casi è possibile omettere completamente i blocchi <Find/>. Il motore la considera una soddisfazione automatica e migra il pacchetto impostazioni.

Attributi

Descrizione

Valori possibili

Obbligatorio?

Nessuno

 

 

 

Figli

Minimo

Massimo

<Name/>

1

1

<Location/>

1

Qualsiasi