Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Muitos dos diretórios que aparecem em arquivos INF podem ser expressos usando identificadores de diretório (dirids), que são números que identificam diretórios específicos. Os aplicativos podem usar, mas não reatribuir, os diretórios definidos pelo sistema associados a dirids cujos valores são de -1 a 32.767.
Para criar dirids com valores definidos pelo usuário de 32768 a 65534 ou 65536 ou mais, use a função SetupSetDirectoryId (descrita na documentação do SDK Microsoft Windows).
Lembre-se de que um dirid com um valor de 65535 é considerado sinônimo de um dirid com um valor de -1, embora este último (dirid -1) seja preferido.
Se você pretende usar dirids em seu arquivo INF, considere as duas diretrizes a seguir:
Quando a sintaxe de uma entrada de arquivo INF especifica explicitamente um valor dirid (a seção InF DestinationDirs, por exemplo), expresse esse valor como um número.
O exemplo a seguir demonstra essa sintaxe:
[DestinationDirs] DefaultDestDir = 11 ; \system32 directory on Windows 2000 and later versionsQuando a sintaxe de uma entrada de arquivo INF especifica um caminho de arquivo, você pode usar uma substituição de cadeia de caracteres fornecida pelo sistema para representar parte ou todo esse caminho. Essa substituição tem a seguinte forma:
% dirid%
Esse formulário consiste em um caractere percentual (%), seguido pelo dirid do diretório que você deseja especificar, seguido por outro caractere percentual (%). Um caractere de barra invertida terminante () separa essa expressão de um nome de arquivo a seguir ou diretórios adicionais no caminho.
O exemplo a seguir demonstra essa sintaxe:
[aic78xx_Service_Inst] ServiceBinary = %12%\aic78xx.sysQuando totalmente expandido, o caminho mostrado no exemplo anterior torna-se c:windows\\\\ (supondo que Windows foi instalado no diretório c:\windows). Lembre-se de que a substituição de cadeia de caracteres, ou a forma %dirid%, pode ser usada em qualquer lugar em que uma cadeia de caracteres seja esperada, com exceção da seção Strings do INF do arquivo INF.
Os dois exemplos a seguir mostram como a substituição de cadeia de caracteres não deve ser usada.
[DestinationDirs] DefaultDestDir = %11% ; Error! - number expected [aic78xx_Service_Inst] ServiceBinary = 12\aic78xx.sys ; Error! - unknown directory nameNo primeiro exemplo, a sintaxe da entrada DefaultDestDir requer que seu valor seja um número. No entanto, a expressão %11% se expande para uma cadeia de caracteres. No segundo exemplo, o autor do INF aparentemente pretendia definir o valor da entrada ServiceBinary para um arquivo no diretório que contém drivers (consulte a tabela a seguir para obter mais informações). O erro ocorre porque Windows procura o arquivo especificado em um diretório chamado "12", que provavelmente não existe no computador.
A tabela a seguir mostra vários dirids comumente usados e os diretórios que eles representam. Os valores mais comumente especificados pelos arquivos INF do dispositivo e arquivos INF do driver são listados na parte superior da tabela.
Como parte dos requisitos de isolamento do pacote de drivers, um driver deve ser executado a partir da loja de drivers e usar o DIRID 13 para especificar o local dos arquivos do pacote de driver na instalação. A partir do Windows 11, versão 24H2, alguns dos dirids comumente usados foram preteridos ao enviar seu INF para uma assinatura WHQL. Para obter mais informações, consulte InfVerif /h.
| Valor | Diretório de Destino | Versão preterida |
|---|---|---|
01 |
SourceDrive:\pathname (o diretório do qual o arquivo INF foi instalado) |
24H2 do Windows 11 |
10 |
Diretório do Windows. Isso é equivalente a %SystemRoot%. |
|
11 |
Diretório do sistema. Isso é equivalente a %SystemRoot%\system32 para Windows 2000 e versões posteriores do Windows.. |
|
12 |
Diretório de drivers. Isso equivale a %SystemRoot%\system32\drivers para Windows 2000 e versões posteriores do Windows. |
|
13 |
Diretório do Driver Store do pacote de driver. Para o Windows 8.1 e versões posteriores do Windows, especifica o caminho para o diretório Driver Store para onde o pacote de driver foi importado. Não use DelFiles em um arquivo para o qual DestinationDirs inclui dirid 13. O subdiretório opcional na seção SourceDiskFiles para um arquivo deve corresponder ao subdiretório na seção DestinationDirs para a entrada que se aplica a esse arquivo. Não use CopyFiles para renomear um arquivo em que DestinationDirs inclui o dirid 13. Para obter mais informações sobre como usar o dirid 13, veja Executar do repositório de drivers. |
|
17 |
Diretório do arquivo INF |
24H2 do Windows 11 |
18 |
Diretório de ajuda |
24H2 do Windows 11 |
20 |
Diretório de fontes |
24H2 do Windows 11 |
21 |
Diretório de espectadores |
24H2 do Windows 11 |
23 |
Diretório de cores (ICM) (não usado para instalar drivers de impressora) |
|
24 |
Diretório raiz do disco do sistema. Esse é o diretório raiz do disco no qual os arquivos do Windows são instalados. Por exemplo, se dirid 10 for "C:\winnt", dirid 24 será "C:\". |
24H2 do Windows 11 |
25 |
Diretório compartilhado |
24H2 do Windows 11 |
30 |
Diretório raiz do disco de inicialização, também conhecido como "partição do sistema ARC". (Esse pode ou não ser o mesmo diretório que o representado por dirid 24.) |
24H2 do Windows 11 |
50 |
Diretório do sistema Isso é equivalente a %SystemRoot%\system. |
24H2 do Windows 11 |
51 |
Diretório Spool (não usado para instalar drivers de impressora – consulte Dirids de Impressora) |
|
52 |
Diretório de drivers de spool (não usado para instalar drivers de impressora) |
|
53 |
Diretório de perfil do usuário |
24H2 do Windows 11 |
54 |
Diretório onde Ntldr.exe e Osloader.exe estão localizados |
24H2 do Windows 11 |
55 |
Diretório de processadores de impressão (não é usado para instalar drivers de impressora) |
|
-1 |
Caminho absoluto |
24H2 do Windows 11 |
Os valores dirid de 16384 a 32767 são reservados para pastas de shell especiais. A tabela a seguir mostra valores dirid para essas pastas.
| Valor | Pasta especial do shell | Versão preterida |
|---|---|---|
16406 |
Todos os Usuários\Menu Iniciar |
24H2 do Windows 11 |
16407 |
Todos os Usuários\Menu Iniciar\Programas |
24H2 do Windows 11 |
16408 |
Todos os Usuários\Menu Iniciar\Programas\Inicialização |
24H2 do Windows 11 |
16409 |
Todos os Usuários\Área de Trabalho |
24H2 do Windows 11 |
16415 |
Todos os Usuários\Favoritos |
24H2 do Windows 11 |
16419 |
Todos os Usuários\Dados de Aplicativos |
24H2 do Windows 11 |
16422 |
Arquivos de Programas |
|
16425 |
%SystemRoot%\SysWOW64 |
|
16426 |
%ProgramFiles(x86)% |
|
16427 |
Program Files\Common |
|
16428 |
%ProgramFiles(x86)%\Common |
|
16429 |
Todos os Usuários\Modelos |
24H2 do Windows 11 |
16430 |
Todos os Usuários\Documentos |
24H2 do Windows 11 |
Além dos valores nesta tabela definidos em Setupapi.h, você pode usar qualquer um dos valores CSIDL_Xxx definidos em Shlobj.h. Para definir um valor dirid para uma pasta não listada nesta tabela, adicione 16384 (0x4000) ao valor CSIDL_Xxx . Para obter mais informações sobre valores CSIDL_Xxx, consulte a documentação do SDK do Windows.