Раздел INF DestinationDirs

В разделе DestinationDirs указывается целевой каталог или каталоги назначения для всех операций копирования, удаления и(или) переименования файлов, на которые ссылается имя в другом месте INF-файла.

[DestinationDirs]

[DefaultDestDir=dirid[,subdir]] 
[file-list-section=dirid[,subdir]]... 

Записи

DefaultDestDir=dirid[,subdir]
Указывает каталог назначения по умолчанию для всех операций копирования, удаления и (или) переименования для файлов, которые явно не перечислены в разделе списка файлов , на который ссылаются другие записи. Чтобы операции с файлами всегда происходили в правильном каталоге, INF-файл, содержащий записи Include и Needs , не должен указывать целевой каталог по умолчанию. Дополнительные сведения см. в разделе "Примечания".

file-list-section=dirid[,subdir]] ...
Указывает определяемое INF-записью имя раздела, на которое ссылается директива CopyFiles, RenFiles или DelFiles в другом месте INF-файла. Такая запись является необязательной, если в этом разделе есть запись DefaultDestDir и все операции копирования файлов, указанные в этом INF, имеют одинаковое целевое назначение. Однако любой раздел списка файлов , на который ссылается директива RenFiles или DelFiles в других местах INF, должен быть указан здесь.

dirid
Указывает идентификатор каталога целевого каталога для операций с файлами, на которые ссылается имя, возможно, в именованном разделе списка файлов INF. Списки часто используемых dirids см. в разделе Использование dirids. В Windows 10 версии 1709 и более поздних версиях Windows рекомендуется использовать DIRID 13. Дополнительные сведения см. в статье Запуск из хранилища драйверов .

вложенный каталог
Указывает подкаталог (и остальную часть его пути, если таковой есть, в каталоге, определяемом параметром dirid), который будет местом назначения операций с файлами в заданном разделе списка файлов.

Комментарии

Раздел DestinationDirs является обязательным в любом INF-файле, который использует директиву INF CopyFiles или ссылается на раздел списка файлов, будь то с директивой CopyFiles, DelFiles или RenFiles .

Если Abc.inf включает разделы из другого INF-файла, Def.inf, а оба INF-файла содержат запись DefaultDestDir для операций копирования файла, переименования файла или удаления файла, Windows игнорирует целевой каталог по умолчанию, указанный в Def.inf, и выполняет все соответствующие операции с файлами в целевом каталоге по умолчанию, указанном в Abc.inf.

Чтобы операции с файлами всегда происходили в правильных каталогах, INF-файл, включающий записи Include и Needs , не должен включать запись DefaultDestDir в разделе DestinationDirs . Вместо этого такой INF-файл должен явно ссылаться на все имена разделов списка файлов , указанные директивами CopyFiles, RenFiles и DelFiles в разделе DestinationDirs .

Если INF-файл не содержит записи Include и Needs , inf может использовать запись DefaultDestDir , чтобы указать назначение по умолчанию для операций копирования, переименования и удаления файлов, которые отображаются в другом месте INF-файла:

  • Директивы CopyFiles , использующие нотацию прямого копирования (@filename), должны иметь запись DefaultDestDir в разделе DestinationDirs inf, в котором отображается запись прямого копирования.
  • Разделы CopyFiles, RenFiles или DelFiles, на которые нет прямой ссылки в разделе DestinationDirs, должны иметь запись DefaultDestDir в разделе DestinationDirs INF, в которой отображаются разделы копирования, переименования и удаления файлов.

Примеры

В этом примере задается целевой каталог по умолчанию для всех операций copy-file, delete-file и rename-file. Такой простой раздел DestinationDirs является общим для INF-файлов для новых периферийных устройств, так как такой INF обычно просто копирует набор исходных файлов в один каталог на целевом компьютере.

[DestinationDirs]
DefaultDestDir = 13

В этом примере показан фрагмент раздела DestinationDirs inf для видеодрайдера или видеодрайдера.

[DestinationDirs]
DefaultDestDir     = 13

; ... 

; list of per-Manufacturer, per-Models, per-DDInstall-section, and
; CopyFiles-referenced xxx.Miniport/xxx.Display sections omitted here
; along with several other miniport/display paired drivers
; ...
vga.Miniport     = 13
vga.Display      = 13
xga.Miniport     = 13
xga.Display      = 13

См. также раздел

CopyFiles

Установка DDInstall

DelFiles

RenFiles

SourceDisksFiles

SourceDisksNames

Использование dirids