Diretiva INF RegisterDlls

Cuidado

A partir Windows 11 versão 22H2, um pacote de driver que usa essa diretiva não está mais qualificado para uma assinatura do Centro de Desenvolvedores de Hardware.

Os pacotes de driver universais e os Drivers do Windows não podem usar essa diretiva.

Observação

Você pode usar a ferramenta Reg2inf para converter diretivas INF RegisterDlls existentes em diretivas AddReg inf para tornar um pacote de driver Universal.

Uma diretiva RegisterDlls faz referência a uma ou mais seções INF usadas para especificar arquivos que são controles OLE e exigem auto-registro.

[DDInstall]
  
RegisterDlls=register-dll-section[,register-dll-section]...

Cada seção INF referenciada por uma diretiva RegisterDlls deve ter o seguinte formato de entrada:

[register-dll-section] 
  
dirid,[subdir],filename,registration-flags[,[timeout][,argument]] 

Uma seção register-dll pode ter qualquer número de entradas, cada uma em uma linha separada.

Entradas

dirid
Especifica a ID do diretório de destino do arquivo a ser registrado. Para obter mais informações, consulte Usando Dirids.

Subdir
Especifica o caminho do diretório, em relação ao diretório atual, para o arquivo a ser registrado. Se não for especificado, o arquivo estará no diretório atual.

filename
Identifica o nome do arquivo do controle OLE a ser registrado.

sinalizadores de registro
Indica as operações de registro a serem executadas no controle OLE. Um ou ambos os sinalizadores a seguir devem ser especificados.

0x00000001 (FLG_REGSVR_DLLREGISTER)
Chame a função DllRegisterServer do controle OLE (descrita na documentação do SDK do Windows).

0x00000002 (FLG_REGSVR_DLLINSTALL)
Chame a função DllInstall do controle OLE (descrita na documentação do SDK do Windows).

timeout
Especifica o tempo limite, em unidades de segundos, para que um Controle OLE conclua as chamadas de registro especificadas. O tempo limite padrão é de 60 segundos.

argument
Se o controle for um arquivo executável, essa será uma cadeia de caracteres de comando que é passada para o executável. O argumento padrão é /RegServer.

Se o controle não for um arquivo executável, isso especificará o argumento de linha de comando a ser passado para a função DllInstall .

Comentários

Cada nome register-dll-section deve ser exclusivo para o arquivo INF e deve seguir as regras gerais para definir nomes de seção. Para obter mais informações sobre essas regras, consulte Regras gerais de sintaxe para arquivos INF.

As seguintes regras se aplicam ao uso da diretiva RegisterDlls para instalações de dispositivo:

  • Embora a sintaxe permita que filename seja uma DLL ou um arquivo executável, para instalações de dispositivo apenas uma DLL é permitida.

  • O código a ser registrado não deve solicitar a entrada do usuário.

  • As instalações do lado do servidor são executadas em um contexto do sistema. Portanto, você deve ter certeza de que o código que está sendo registrado não contém vulnerabilidades de segurança e que as permissões de arquivo impedem que o código seja modificado maliciosamente.

Para obter mais informações sobre controles OLE e registro automático, consulte a documentação do SDK do Windows.

Exemplos

[Dialer]
RegisterDlls = DialerRegSvr

[DialerUninstall]
UnregisterDlls = DialerRegSvr

[DialerRegSvr]
11,,avtapi.dll, 1

Confira também

UnregisterDlls