Next Topic

Previous Topic

Book Contents

Einstellung

Das <Setting/>-Element beschreibt eine Einstellung, die von diesem Paket migriert wird.

Abbildung

Alle Zeichenfolgen werden von der Quelle auf ein Ziel abgebildet. Falls sich das Programmdateien-Verzeichnis zwischen Rechnern ändert, erkennt die Engine dies und korrigiert den Pfad. Falls der Dokumente-Ordner des Benutzers an einen anderen Speicherort verschoben wird, so wird der Pfad ebenfalls aktualisiert.

Registrierungspfad-Aliase

Zahlreiche Einstellungen werden in der Registrierung gespeichert und durch ihren Registrierungspfad referenziert. Die folgenden Aliase werden von der Engine erkannt, was das Lesen des Einstellungenpakets erleichtert. Alle Beispiele verwenden diese.

Alias

Referenzen

HKCU

HKEY_CURRENT_USER

HKLM

HKEY_LOCAL_MACHINE

HKCR

HKEY_CLASSES_ROOT

HKU

HKEY_USERS

HKCC

HKEY_CURRENT_CONFIG

HKDD

HKEY_DYN_DATA

HKPD

HKEY_PERFORMANCE_DATA

Einstellungen innerhalb von Einstellungen

Diese Option ist nützlich zum Gruppieren von Einstellungen, damit das Einstellungenpaket einfacher zu lesen ist:

        <Setting Name="Security">
            <Setting Name="EnablePGP">
                <Location Type="registry" SubType="value">
                    HCKU\Software\Crunch\EnablePGP
                </Location>
            </Setting>
            <Setting Name="RequirePassword">
                <Location Type="registry" SubType="value">
                    HCKU\Software\Crunch\PasswordRequired
                </Location>
            </Setting>
        </Setting>

Beachten Sie, dass es sich hierbei lediglich um eine logische Gruppierung innerhalb des Einstellungenpakets handelt. Sie muss nicht der Struktur entsprechen, in der diese Einstellungen gespeichert sind. Beliebige Einstellungen auf beliebiger Stufe der Hierarchie können gruppiert werden.

Die Namen dieser Einstellungen lauten etwas anders. Die verschachtelten Einstellungen haben qualifizierte Namen, die sich aus dem qualifizierten Namen der übergeordneten Einstellung, einem Schrägstrich und ihrem eigenen Namen zusammensetzen. Bei den folgenden Einstellungen handelt es sich also um qualifizierte Namen: Security/EnablePGP und Security/RequirePassword.

Schlüsselbaum mit registry/subkey migrieren

Meistens werden Sie einen gesamten Registrierungsschlüssel mit allen seinen Werten, Unterschlüsseln und Werten verschieben wollen. Hierzu verwenden Sie Type="registry" SubType="subkey".

        <Setting Name="CrunchSettings">
            <Location Type="registry" SubType="value">
                HKCU\Software\Crunch
            </Location>
        </Setting>

Alle Zeichenfolgen werden automatisch für Sie abgebildet, und alle Datentypen werden automatisch ermittelt. In bestimmten Fällen, falls die Registrierung beispielsweise Pfade zu Dateien enthält, die Sie migrieren möchten, müssen diese getrennt über einen Dateipfad verarbeitet werden. Probieren Sie es zunächst mit der Methode registry/subkey. Greifen Sie nur dann auf einen anderen Registrierungs-SubType zurück, wenn die erste Methode nicht funktioniert.

Registrierungswert mit registry/value migrieren

Ein Registrierungswert kann durch Angabe seines Pfads migriert werden:

        <Setting Name="ReticulateSplines">
            <Location Type="registry" SubType="value">
                HKCU\Software\Crunch\ReticulateSplines
            </Location>
        </Setting>

Mit registry/valueexistence migrieren, unabhängig davon, ob ein Registrierungswert existiert oder nicht

Mitunter speichert eine Anwendung Informationen nicht in einem Registrierungswert, prüft jedoch dennoch, ob dieser existiert. Diese können wie folgt migriert werden:

        <Setting Name="IsRegistered">
            <Location Type="registry" SubType="valueexistence">
                HKCU\Software\Crunch\Registered
            </Location>
        </Setting>

Datei mit file migrieren

Das Migrieren einer Datei mit einer festen Position ist einfach:

        <Setting Name="DataFile">
            <Location Type="file" File="C:\Path\To\File.dat" />
        </Setting>

Verwenden Sie Variablen, wann immer möglich:

        <Setting Name="DataFile">
            <Location Type="file" File="%ProgramFiles%\Crunch\File.dat" />
        </Setting>

Datei migrieren, deren Pfad in der Registrierung mit filepath angegeben ist

Wenn eine Einstellung in Wirklichkeit einen Pfad zu einer Datei angibt, so möchten Sie wahrscheinlich nicht nur den Pfad, sondern auch die Datei speichern. In diesem Fall fügen Sie ein Attribut Type="filepath" zu <Setting/> hinzu. Daraufhin verschiebt die Engine die Datei für Sie. Der Registrierungswert wird abgebildet und migriert, und die Datei wird migriert und am entsprechend abgebildeten Speicherort abgelegt.

        <Setting Name="DataFile" Type="filepath">
            <Location Type="registry" SubType="value">
                HKCU\Software\Crunch\DataFilePath
            </Location>
        </Setting>

Attribute

Beschreibung

Mögliche Werte

Erforderlich?

Name

Der Name der Einstellung. Für verschachtelten Einstellungen ist der qualifizierte Name der qualifizierte Name der übergeordneten Einstellung, ein Schrägstrich und dann der Wert dieses Attributs.

Es können nur die Buchstaben a-z, A-Z, 0-9 und die Zeichen Punkt, Strich und Unterstrich in Text verwendet werden. Es sind keine Leerzeichen zulässig.

Ja

Typ

Sollte diese Einstellung anders als eine gewöhnliche Zeichenfolge behandelt werden? Falls der Wert eine zusätzliche Bedeutung birgt, kann der Typ diese Bedeutung identifizieren.

filepath oder nichts

Nein

OS-Version

Nur die angegebenen Betriebssysteme werden migriert. Mehrere Betriebssysteme sind durch ein Pipe-Zeichen voneinander zu trennen: zum Beispiel Windows95|Windows2000. Manche Werte tun dies automatisch für Sie: alle, die mit Any beginnen.

Windows2000 oder WindowsXP oder WindowsVista. AnyWindows schließt alle diese Windows-Betriebssysteme ein.

Nein

Untergeordnete Elemente

Mindest

Maximum

<Location/>

0

Beliebig

<Default/>

0

1

<Setting/>

0

Beliebig

<SettingsList/>

0

Beliebig