Partilhar via


Diretiva INF DelFiles

Cuidado

Se você estiver criando um pacote de drivers universal ou do Windows, essa diretiva não será válida. Consulte Usar um arquivo INF universal e Introdução ao desenvolvimento de drivers do Windows.

Uma diretiva DelFiles faz referência a uma seção definida pelo gravador do INF em outro lugar no arquivo INF e faz com que essa lista de arquivos seja excluída no contexto de operações na seção em que a diretiva DelFiles referenciada seja especificada.

[DDInstall] | 
[DDInstall.CoInstallers] | 
[ClassInstall32] | 
[ClassInstall32.ntx86] | 
[ClassInstall32.ntia64] | (Windows XP and later versions of Windows)
[ClassInstall32.ntamd64] | (Windows XP and later versions of Windows) 
[ClassInstall32.ntarm] | (Windows 8 and later versions of Windows) 
[ClassInstall32.ntarm64] (Windows 10 version 1709 and later versions of Windows) 
  
Delfiles=file-list-section[,file-list-section]... 

Uma diretiva DelFiles pode ser especificada em qualquer uma das seções mostradas na instrução de sintaxe formal. Essa diretiva também pode ser especificada em qualquer uma das seguintes seções definidas pelo gravador do INF:

Cada seção nomeada referenciada por uma diretiva DelFiles tem uma ou mais entradas do seguinte formato:

[file-list-section]
 
destination-file-name[,,,flag]
...

Uma file-list-section pode ter qualquer número de entradas, cada uma em uma linha separada.

Entradas

destination-file-name
Especifica o nome do arquivo que será excluído do destino.

Não especifique um arquivo listado em uma diretiva CopyFiles. Se um arquivo estiver listado em uma seção referenciada por CopyFiles e DelFiles, e o arquivo estiver presente no sistema com uma assinatura válida, o sistema operacional poderá otimizar a operação de cópia, mas executar a operação de exclusão. Muito provavelmente não é isso que o gravador do INF pretendia.

Observação

Você não pode usar um token %strkey% para especificar a entrada destination-file-name. Para mais informações sobre tokens %strkey%, consulte a seção Strings do INF.

flag
Esse valor opcional pode ser um dos seguintes, expresso em notação hexadecimal, conforme mostrado aqui, ou como um valor decimal:

0x00000001 (DELFLG_IN_USE)
Exclua o arquivo nomeado, possivelmente depois que ele ser usado durante o processo de instalação.

Defina esse valor de sinalizador em um INF para enfileirar a operação de exclusão de arquivo até que o sistema seja reiniciado se o arquivo fornecido não puder ser excluído porque está em uso enquanto esse INF está sendo processado. Caso contrário, esse arquivo não será excluído.

0x00010000 (DELFLG_IN_USE1) (Windows 2000 ou versões posteriores do Windows)
Esse sinalizador é uma versão de palavras altas do sinalizador DELFLG_IN_USE e tem o mesmo propósito e efeito. Esse sinalizador deve ser usado apenas para instalações nos sistemas baseados em NT.

Defina esse valor de sinalizador em um INF para evitar conflitos com o sinalizador COPYFLG_WARN_IF_SKIP em um INF com as diretivas DelFiles e CopyFiles, que fazem referência à mesma file-list-section.

Comentários

Importante

Esta diretiva deve ser utilizada com cuidado. É altamente recomendável que você não use a diretiva DelFiles no arquivo INF para um driver de função Plug and Play (PnP).

Qualquer nome de file-list-section deve ser exclusivo para o arquivo INF, mas pode ser referenciado pelas diretivas CopyFiles, DelFiles ou RenFiles em outro lugar no mesmo INF. Tal seção INF-writer-defined deve seguir as regras gerais para definir nomes de seção. Para mais informações sobre essas regras, consulte Regras gerais de sintaxe para arquivos INF.

A diretiva DelFiles não dá suporte à decoração de um nome de file-list-section com uma extensão de plataforma definida pelo sistema (.nt, .ntx86, .ntia64, .ntamd64, .ntarm ou .ntarm64).

A seção DestinationDirs do arquivo INF controla o destino de todas as operações file-deletion, independentemente da seção que contém uma diretiva DelFiles específica. Se uma seção nomeada referenciada por uma diretiva DelFiles tiver uma entrada correspondente na seção DestinationDirs do mesmo INF, essa entrada especificará explicitamente o diretório de destino do qual todos os arquivos listados na seção nomeada serão excluídos. Se a seção nomeada não estiver listada na seção DestinationDirs, o Windows usará a entrada DefaultDestDir no INF.

Exemplos

Este exemplo mostra como a seção DestinationDirs especifica o caminho para uma operação de exclusão de arquivo que ocorre no processamento de um INF de driver de dispositivo simples.

[DestinationDirs]
DefaultDestDir = 12  ; DIRID_DRIVERS 

; ... 

[AHA154X]
CopyFiles=@AHA154x.MPD
DelFiles=ASPIDEV ; defines delete-files section name
; ... some other directives and sections omitted here

[ASPIDEV]
VASPID.SYS ; name of file to be deleted, if it exists on target 
; ...

Confira também

AddInterface

ClassInstall32

CopyFiles

DDInstall

DestinationDirs

InterfaceInstall32

RenFiles

Cadeias de caracteres