Seção INF DefaultInstall
Observação
Se você estiver criando um pacote de driver universal, esta seção será válida somente se ela tiver uma decoração de arquitetura, por exemplo [DefaultInstall.NTAMD64]
.
Observação
O uso das seções DefaultInstall e Manufacturer em seu INF causará falhas de validação de INF Universal e poderá levar a comportamentos de instalação inconsistentes. Consulte Usando um arquivo INF universal.
A seção DefaultInstall de um arquivo INF será acessada se um usuário selecionar o item de menu "Instalar" depois de selecionar e segurar (ou clicar com o botão direito do mouse) no nome do arquivo INF. Em Windows 10 versão 1903 e versões posteriores do Windows, um INF com DefaultInstall poderá ser usado em muitas APIs de pacote de driver se atender aos requisitos de um driver primitivo.
[DefaultInstall] |
[DefaultInstall.nt] |
[DefaultInstall.ntx86] |
[DefaultInstall.ntia64] | (Windows XP and later versions of Windows)
[DefaultInstall.ntamd64] | (Windows XP and later versions of Windows)
[DefaultInstall.ntarm] | (Windows 8 and later versions of Windows)
[DefaultInstall.ntarm64] (Windows 10 version 1709 and later versions of Windows)
[CopyFiles=@filename | file-list-section[,file-list-section] ...]
[CopyINF=filename1.inf[,filename2.inf]...]
[AddReg=add-registry-section[,add-registry-section]...]
[Include=filename1.inf[,filename2.inf]...]
[Needs=inf-section-name[,inf-section-name]...]
[Delfiles=file-list-section[,file-list-section]...]
[Renfiles=file-list-section[,file-list-section]...]
[DelReg=del-registry-section[,del-registry-section]...]
[BitReg=bit-registry-section[,bit-registry-section]...]
[ProfileItems=profile-items-section[,profile-items-section]...]
[UpdateInis=update-ini-section[,update-ini-section]...]
[UpdateIniFields=update-inifields-section[,update-inifields-section]...]
[Ini2Reg=ini-to-registry-section[,ini-to-registry-section]...]
[RegisterDlls=register-dll-section[,register-dll-section]...]
[UnregisterDlls=unregister-dll-section[,unregister-dll-section]...] ...
Entradas
Nem todas as entradas válidas têm suporte em um INF Universal. O a seguir lista quais diretivas são válidas em um INF universal e quais não são.
Com suporte em um INF Universal
CopyFiles=@filename | file-list-section[,file-list-section] ...
Essa diretiva opcional especifica um arquivo nomeado a ser copiado do meio de origem para o destino ou faz referência a uma ou mais seções definidas pelo gravador INF que especificam arquivos a serem transferidos da mídia de origem para o destino.
A entrada DefaultDestDir na seção DestinationDirs do INF especifica o destino para qualquer arquivo a ser copiado. As seções SourceDisksNames e SourceDisksFiles ou um INF adicional especificado na entrada LayoutFile da seção Versão deste INF fornecem o local na mídia de distribuição dos arquivos de driver.
Para obter mais informações, consulte Diretiva CopyFiles do INF.
CopyINF=filename1.inf[,filename2.inf]...
(Windows XP e versões posteriores do Windows.) Essa diretiva faz com que os arquivos INF especificados sejam copiados para o sistema de destino.
Para obter mais informações, consulte Diretiva COPYINF do INF.
AddReg=add-registry-section[,add-registry-section]...
Essa diretiva faz referência a uma ou mais seções definidas pelo gravador INF nas quais novas subchaves, possivelmente com entradas de valor inicial, são especificadas para serem gravadas no registro ou nas quais as entradas de valor das chaves existentes são modificadas.
Para obter mais informações, consulte Diretiva InF AddReg.
Include=filename1.inf[,filename2.inf]...
Essa entrada opcional especifica um ou mais arquivos INF adicionais fornecidos pelo sistema que contêm seções necessárias para instalar este dispositivo e/ou driver. Se essa entrada for especificada, geralmente é uma entrada Needs .
Por exemplo, os arquivos INF do sistema para drivers de dispositivo que dependem do suporte de streaming de kernel do sistema especificam essa entrada da seguinte maneira:
Include= ks.inf,kscaptur.inf,ksfilter.inf
Needs=inf-section-name[,inf-section-name]...
Essa entrada opcional especifica seções em arquivos INF fornecidos pelo sistema que devem ser processados durante a instalação deste dispositivo. Normalmente, essa seção nomeada é uma DDInstall (ou DDInstall).xxx) seção dentro de um dos arquivos INF listados em uma entrada Include . No entanto, pode ser qualquer seção referenciada em um DDInstall ou DDInstall.seção xxx do INF incluído.
Por exemplo, os arquivos INF para drivers de dispositivo que têm a entrada Include anterior especificam essa entrada da seguinte maneira:
Needs= KS.Registration,KSCAPTUR.Registration.NT,MSPCLOCK.Installation
Sem suporte em um INF Universal
Delfiles=file-list-section[,file-list-section]...
Essa diretiva faz referência a uma ou mais seções definidas pelo gravador INF listando arquivos no destino a serem excluídos.
Para obter mais informações, consulte Diretiva INF DelFiles.
Renfiles=file-list-section[,file-list-section]...
Essa diretiva faz referência a uma ou mais seções definidas pelo gravador INF listando arquivos a serem renomeados no destino antes que os arquivos de origem relevantes do dispositivo sejam copiados para o computador de destino.
Para obter mais informações, consulte Diretiva RenFiles do INF.
DelReg=del-registry-section[,del-registry-section]...
Essa diretiva faz referência a uma ou mais seções definidas pelo gravador INF nas quais as entradas de chave e/ou valor são especificadas para serem removidas do registro durante a instalação dos dispositivos.
Para obter mais informações, consulte Diretiva INF DelReg.
BitReg=bit-registry-section[,bit-registry-section]...
Essa diretiva faz referência a uma ou mais seções definidas pelo gravador INF nas quais as entradas de valor de registro existentes do tipo REG_BINARY são modificadas. Para obter mais informações, consulte Diretiva InF AddReg.
Para obter mais informações, consulte Diretiva INF BitReg.
ProfileItems=profile-items-section[,profile-items-section]...
Essa diretiva faz referência a uma ou mais seções definidas pelo gravador INF que descrevem os itens a serem adicionados ou removidos do menu Iniciar.
Para obter mais informações, consulte Diretiva INF ProfileItems.
UpdateInis=update-ini-section[,update-ini-section]...
Essa diretiva raramente usada faz referência a uma ou mais seções definidas pelo gravador INF, especificando um arquivo INI de origem do qual uma determinada seção ou linha dentro dessa seção deve ser lida em um arquivo INI de destino com o mesmo nome durante a instalação. Opcionalmente, as modificações linha a linha em um arquivo INI existente no destino de um arquivo INI de origem especificado com o mesmo nome podem ser especificadas na seção update-ini.
Para obter mais informações, consulte Diretiva UpdateInis do INF.
UpdateIniFields=update-inifields-section[,update-inifields-section]...
Essa diretiva raramente usada faz referência a uma ou mais seções definidas pelo gravador INF nas quais as modificações dentro das linhas de um arquivo INI específico do dispositivo são especificadas.
Para obter mais informações, consulte Diretiva UPDATEIniFields do INF.
Ini2Reg=ini-to-registry-section[,ini-to-registry-section]...
Essa diretiva raramente usada faz referência a uma ou mais seções definidas pelo gravador INF nas quais seções ou linhas de um arquivo INI específico do dispositivo, fornecido na mídia de origem, devem ser movidas para o registro.
Para obter mais informações, consulte Diretiva INF Ini2Reg.
RegisterDlls=register-dll-section[,register-dll-section]...
Essa diretiva faz referência a uma ou mais seções INF usadas para especificar arquivos que são controles OLE e exigem o autoregistro.
Para obter mais informações, consulte Diretiva RegisterDlls do INF.
UnregisterDlls=unregister-dll-section[,unregister-dll-section]...
Essa diretiva faz referência a uma ou mais seções INF usadas para especificar arquivos que são controles OLE e exigem auto-cancelamento de registro (autoextração).
Para obter mais informações, consulte Diretiva UnregisterDlls do INF.
Comentários
As seções DefaultInstall não devem ser usadas para instalações de dispositivo. Use as seções DefaultInstall somente para a instalação de drivers de filtro de classe, filtros do sistema de arquivos e serviços de driver de kernel que não estão associados a um nó de dispositivo (devnode).
Se estiver usando DefaultInstall no Windows 10 versão 1903 e versões posteriores do Windows, é recomendável que o arquivo INF atenda aos requisitos de um driver primitivo.
Observação
O arquivo INF de um pacote de driver que tem uma seção Fabricante não deve conter uma seção INF DefaultInstall se o pacote de driver deve ser assinado digitalmente. Para obter mais informações sobre como assinar pacotes de driver, consulte Assinatura de driver.
Observação
Ao contrário de uma seção DDInstall , uma seção DefaultInstall não pode conter diretivas DriverVer ou LogConfig .
Para instalar uma seção DefaultInstall de um aplicativo de instalação de dispositivo, use a seguinte chamada para InstallHinfSection:
InstallHinfSection(NULL,NULL,TEXT("DefaultInstall 132 path-to-inf\infname.inf"),0);
Para obter mais informações sobre como usar as extensões .nt, .ntx86, .ntia64, .ntamd64, .ntarm e .ntarm64 definidas pelo sistema, consulte Criando arquivos INF para várias plataformas e sistemas operacionais.
Exemplos
O exemplo a seguir mostra uma seção DefaultInstall típica:
[DefaultInstall]
CopyFiles=MyAppWinFiles, MyAppSysFiles, @SRSutil.exe
AddReg=MyAppRegEntries