Compartilhar via


Examinando o AnswerFile

Nota Não há suporte para atualizações de rede fornecidas pelo fornecedor no Microsoft Windows XP (SP1 e posterior), no Microsoft Windows Server 2003 e em sistemas operacionais posteriores.

Imediatamente antes que a barra de progresso "Instalação está copiando arquivos" seja exibida em um sistema que está sendo atualizado, o AnswerFile é criado. As DLLs de migração de rede fornecidas pelo netSetup e pelo fornecedor criam seções no AnswerFile e gravam entradas nessas seções durante a fase de atualização do Winnt32.

Você pode examinar o AnswerFile copiando c:\$win_nt$.~bt\winnt.sif para %TEMP%. Depois que o AnswerFile for copiado, você poderá clicar em Cancelar para cancelar a cópia de arquivo. Você não precisa esperar até que a cópia do arquivo seja concluída.

A tabela a seguir lista as seções de nível superior no AnswerFile e as entradas correspondentes que cada seção contém que pertencem aos componentes de rede:

Seção Entradas contidas

NetAdapters

Adaptadores de rede, incluindo adaptadores ISDN

AsyncAdapters

Adaptadores assíncronos

NetProtocols

Protocolos de rede

NetServices

Serviços de rede

NetClients

Clientes de rede

Observação Os componentes do NetClient são preteridos em Windows 8.1, Windows Server 2012 R2 e posteriores.

Para cada componente de rede encontrado durante a fase Winnt32, o NetSetup grava uma entrada na seção de nível superior apropriada do AnswerFile. Cada entrada tem o seguinte formato:

Params. postupgrade-ID

A entrada postupgrade-ID é a ID do dispositivo Windows 2000 ou posterior obtida pelo NetSetup do arquivo netmap.inf para o componente.

Cada entrada especifica o nome da seção de parâmetros para esse componente no AnswerFile. Por exemplo, se a ID do dispositivo Windows 2000 ou posterior de um componente for netadapter2, sua entrada na seção NetAdapters será params.netadapter2. As seções de nível superior e as seções de parâmetro em um AnswerFile não são visíveis para uma DLL de migração de rede.

Ao nome da seção de parâmetros de um componente, NetSetup adiciona a extensão OemSection para criar o nome da seção OEM para o componente. Por exemplo, se a seção de parâmetros de um componente for params.netadapter2, o nome da seção OEM para o componente será params.netadapter2.OemSection. NetSetup passa o nome da seção OEM como o parâmetro szSectionName para a função DoPreUpgradeProcessing fornecida pela DLL de migração de rede para o componente. A função DoPreUpgradeProcessing chama a função NetUpgradeAddSection para criar a seção OEM para um componente no AnswerFile. A função DoPreUpgradeProcessing chama NetUpgradeAddLineToSection para adicionar informações específicas do componente à seção OEM.

A parte a seguir de um AnswerFile mostra as seções e entradas de um adaptador de rede cuja ID do dispositivo Windows 2000 ou posterior é adapter2:

[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

Durante a fase do modo GUI, o NetSetup detecta a chave InfToRunAfterInstall gravada pela DLL de migração para o params.adapter2.OemSection do exemplo AnswerFile. Conforme direcionado por essa chave, o NetSetup processa o adaptador2. Seção SectionToRun.AddReg . O adaptador2. A seção SectionToRun.AddReg direciona NetSetup para adicionar valores de parâmetro à chave de instância do adapater2 no Registro do Windows 2000 ou posterior. Esses valores de parâmetro devem corresponder aos valores de parâmetro preupgrade que a DLL de migração leu do registro do adaptador2 durante a fase Winnt32 da atualização.

Se uma DLL de migração de rede for carregada durante a fase do modo GUI, sua função DoPreUpgradeProcessing definirá o sinalizador NUA_LOAD_POST_UPGRADE. Esse sinalizador faz com que o NetSetup escreva a entrada OemDllToLoad na seção de parâmetros do componente no AnswerFile. A entrada OemDllToLoad faz com que o NetSetup carregue a DLL de migração para o componente durante a fase de modo gui.

O exemplo a seguir mostra as seções e entradas do AnswerFile para um componente cuja DLL de migração de rede é carregada durante a fase de modo gui:

[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

Observe a entrada OemDllToLoad na seção params.adapter2 . Observe também que a DLL de migração não criou um params.adapter2.OemSection. Quando a DLL de migração deve ser carregada durante a fase do modo GUI, ela normalmente não grava uma chave InfToRunAfterInstall no AnswerFile. A DLL executa a atualização de pós-instalação; portanto, ele não precisa criar um nome da Seção Oem que contenha diretivas para que o NetSetup seja executado durante a fase do modo GUI.