Untersuchen der AnswerFile-Datei
Hinweis Vom Anbieter bereitgestellte Netzwerkupgrades werden in Microsoft Windows XP (SP1 und höher), Microsoft Windows Server 2003 und höheren Betriebssystemen nicht unterstützt.
Unmittelbar bevor die Statusleiste "Setup ist Kopieren von Dateien" auf einem System angezeigt wird, das aktualisiert wird, wird die AnswerFile-Datei erstellt. NetSetup und vom Anbieter bereitgestellte Netzwerkmigrations-DLLs erstellen Abschnitte in der AnswerFile-Datei und schreiben dann während der Winnt32-Upgradephase Einträge in diese Abschnitte.
Sie können die AnswerFile-Datei untersuchen, indem Sie c:\$win_nt$.~bt\winnt.sif in %TEMP% kopieren. Nachdem das AnswerFile kopiert wurde, können Sie auf Abbrechen klicken, um das Kopieren der Datei abzubrechen. Sie müssen nicht warten, bis das Kopieren der Datei abgeschlossen ist.
In der folgenden Tabelle sind die Abschnitte der obersten Ebene in der AnswerFile-Datei und die entsprechenden Einträge aufgeführt, die jeder Abschnitt enthält, die sich auf Netzwerkkomponenten beziehen:
`Section` | Enthaltene Einträge |
---|---|
NetAdapters |
Netzwerkadapter, einschließlich ISDN-Adapter |
AsyncAdapters |
Asynchrone Adapter |
NetProtocols |
Netzwerkprotokolle |
Netservices |
Netzwerkdienste |
NetClients |
Netzwerkclients |
Hinweis:NetClient-Komponenten sind in Windows 8.1, Windows Server 2012 R2 und höher veraltet.
Für jede Netzwerkkomponente, die während der Winnt32-Phase gefunden wird, schreibt NetSetup einen Eintrag in den entsprechenden Abschnitt der obersten Ebene der AnswerFile-Datei. Jeder Eintrag weist das folgende Format auf:
Params. postupgrade-ID
Der Postupgrade-ID-Eintrag ist die Windows 2000- oder höher-Geräte-ID, die NetSetup aus der Datei netmap.inf für die Komponente abgerufen hat.
Jeder Eintrag gibt den Namen des Parameters-Abschnitts für diese Komponente in der AnswerFile an. Wenn die Windows 2000- oder höher-Geräte-ID einer Komponente beispielsweise netadapter2 lautet, lautet ihr Eintrag im Abschnitt NetAdaptersparams.netadapter2. Die Abschnitte der obersten Ebene und die Parameterabschnitte in einer AnswerFile-Datei sind für eine Netzwerkmigrations-DLL nicht sichtbar.
Zum Parameterabschnittsnamen für eine Komponente fügt NetSetup die Erweiterung OemSection hinzu, um den Namen des OEM-Abschnitts für die Komponente zu erstellen. Wenn der Parameterabschnitt für eine Komponente beispielsweise params.netadapter2 lautet, lautet der OEM-Abschnittsname für die Komponente params.netadapter2.OemSection. NetSetup übergibt den Namen des OEM-Abschnitts als szSectionName-Parameter an die DoPreUpgradeProcessing-Funktion , die von der Netzwerkmigrations-DLL für die Komponente bereitgestellt wird. Die DoPreUpgradeProcessing-Funktion ruft die NetUpgradeAddSection-Funktion auf, um den OEM-Abschnitt für eine Komponente in answerFile zu erstellen. Die DoPreUpgradeProcessing-Funktion ruft dann netUpgradeAddLineToSection auf, um dem OEM-Abschnitt komponentenspezifische Informationen hinzuzufügen.
Der folgende Teil einer AnswerFile-Datei zeigt die Abschnitte und Einträge für einen Netzwerkadapter, dessen Windows 2000 oder höher geräte-ID adapter2 ist:
[NetAdapter] ;top-level adapters section
adapter2=params.adapter2 ;entry for adapter2
[params.adapter2] ;parameters section for adapter2
InfID=adapter2 ;Windows 2000 or later device ID
OemSection=params.adapter2.OemSection ;Identifies the OemSection
[params.adapter2.OemSection] ;OemSection created by migration DLL
InfToRunAfterInstall="", adapter2.SectionToRun ;Written by DLL
[adapter2.SectionToRun] ;Section created by migration DLL
AddReg=adapter2.SectionToRun.AddReg ;AddReg directive
[adapter2.SectionToRun.AddReg] ;AddReg section created by DLL
HKR,0\0,IsdnPhoneNumber,0,"111-1111" ;AddReg entries written by DLL
HKR,0\1,IsdnPhoneNumber,0,"222-2222"
HKR,0\0,IsdnSpid,0,"111"
HKR,0\1,IsdnSpid,0,"222"
HKR,0,IsdnSwitchType,0x00010001,1
Während der Phase des GUI-Modus erkennt NetSetup den Schlüssel InfToRunAfterInstall , der von der Migrations-DLL in die datei params.adapter2.OemSection des Beispiels AnswerFile geschrieben wurde. Wie von diesem Schlüssel angewiesen, verarbeitet NetSetup den adapter2. Abschnitt "SectionToRun.AddReg ". Der adapter2. Der Abschnitt SectionToRun.AddReg weist NetSetup an, Parameterwerte zum instance Schlüssel von adapater2 in der Windows 2000- oder höher-Registrierung hinzuzufügen. Diese Parameterwerte sollten mit den Preupgrade-Parameterwerten übereinstimmen, die die Migrations-DLL während der Winnt32-Phase des Upgrades aus der Registrierung von adapter2 gelesen hat.
Wenn eine Netzwerkmigrations-DLL während der GUI-Modusphase geladen werden soll, legt die DoPreUpgradeProcessing-Funktion das flag NUA_LOAD_POST_UPGRADE fest. Dieses Flag bewirkt, dass NetSetup den Eintrag OemDllToLoad in den Parameterabschnitt der Komponente im AnswerFile schreibt. Der OemDllToLoad-Eintrag bewirkt, dass NetSetup die Migrations-DLL für die Komponente während der Phase des GUI-Modus lädt.
Das folgende Beispiel zeigt die AnswerFile-Abschnitte und -Einträge für eine Komponente, deren Netzwerkmigrations-DLL während der Phase des GUI-Modus geladen wird:
[NetAdapter] ;top-level adapters section
adapter2=params.adapter2 ;entry for adapter2
[params.adapter2] ;parameters section for adapter2
InfID=adapter2 ;postupgrade device ID
OemSection=params.adapter2.OemSection;Identifies the OemSection
OemDllToLoad=c:\temp\oem0001\migration.dll
Beachten Sie den Eintrag OemDllToLoad im Abschnitt params.adapter2 . Beachten Sie auch, dass die Migrations-DLL keine params.adapter2.OemSection erstellt hat. Wenn die Migrations-DLL während der GUI-Modusphase geladen werden soll, schreibt sie in der Regel keinen InfToRunAfterInstall-Schlüssel in die AnswerFile. Die DLL führt das Upgrade nach der Installation durch. Daher muss kein Oem-Section-Name erstellt werden, der Anweisungen enthält, damit NetSetup während der GUI-Modusphase ausführen kann.