INF DestinationDirs セクション
DestinationDirs セクションは、INF ファイル内の他の場所で参照されるファイルに対するすべてのコピー、削除、名前変更操作の対象ディレクトリを指定します。
[DestinationDirs]
[DefaultDestDir=dirid[,subdir]]
[file-list-section=dirid[,subdir]]...
エントリ
DefaultDestDir=dirid[,subdir]
他のエントリによって参照される ファイル リスト セクション に明示的にリストされていないファイルに対するすべてのコピー、削除、名前変更操作の既定のコピー先ディレクトリを指定します。 ファイル操作が常に正しいディレクトリで行われるようにするには、 Include エントリと Needs エントリを含む INF ファイルで既定の宛先ディレクトリを指定しないでください。 詳細については、「解説」を参照してください。
file-list-section=dirid[,subdir]] ...
INF ファイル内の他の場所で CopyFiles、 RenFiles、または DelFiles ディレクティブによって参照されるセクションの INF ライターによって決定される名前を指定します。 このセクションに DefaultDestDir エントリがあり、この INF で指定されたすべてのコピー ファイル操作のターゲット変換先が同じである場合、このようなエントリは省略可能です。 ただし、INF の他の場所で RenFiles または DelFiles ディレクティブによって参照される ファイル リスト セクション は、ここに一覧表示する必要があります。
dirid
INF の名前付き ファイル リスト セクション 内で、名前によって参照されるファイルに対する操作のターゲット ディレクトリのディレクトリ識別子を指定します。 一般的に使用される ダイリド の一覧については、「Dirids の使用」を参照してください。 Windows 10 バージョン 1709 以降のバージョンの Windows では、DIRID 13 を使用することをお勧めします。 詳細については、 ドライバー ストアからの実行 を参照。
subdir
指定された file-list-section内のファイル操作の宛先となるサブディレクトリ (および、そのパスの残りの部分 (存在する場合は、 diridで識別されるディレクトリの下) を指定します。
解説
DestinationDirs セクションは、 INF CopyFiles ディレクティブを使用する INF ファイル、または CopyFiles、 DelFiles、 RenFiles ディレクティブのいずれを使用する場合でも、 ファイル リスト セクションを参照する INF ファイルで必要です。
Abc.inf に別の INF ファイル Def.infのセクションが含まれており、両方の INF ファイルにコピー ファイル、ファイル名の変更、またはファイルの削除操作用の DefaultDestDir エントリが含まれている場合、Windows は Def.inf で指定されている既定のコピー先ディレクトリを無視し、 Abc.infで指定されている既定の宛先ディレクトリで対応するすべてのファイル操作を実行します。
ファイル操作が常に正しいディレクトリで行われるようにするには、 Include エントリと Needs エントリを含む INF ファイルに、 DestinationDirs セクションに DefaultDestDir エントリを含めないようにする必要があります。 代わりに、このような INF ファイルは、 DestinationDirs セクションの CopyFiles、 RenFiles、および DelFiles ディレクティブで指定されているすべての ファイル リスト セクション 名を明示的に参照する必要があります。
INF ファイルに Include エントリと Needs エントリが含まれていない場合、INF は DefaultDestDir エントリを使用して、INF ファイルの他の場所に表示されるファイルのコピー、名前の変更、および削除の操作の既定の変換先を指定できます。
- 直接コピー (@filename) 表記を使用する CopyFiles ディレクティブには、直接コピー エントリが表示される INF の DestinationDirs セクションに DefaultDestDir エントリが必要です。
- DestinationDirs セクションで直接参照されていない CopyFiles、 RenFiles、または DelFiles セクションには、ファイル セクションのコピー、名前の変更、および削除が表示される INF の DestinationDirs セクションに DefaultDestDir エントリが必要です。
例
次の使用例は、すべてのコピー ファイル、delete-file、および rename-file 操作の既定のターゲット ディレクトリを設定します。 このような単純な DestinationDirs セクションは、新しい周辺機器の INF ファイルに共通です。INF では通常、一連のソース ファイルがターゲット コンピューター上の単一のディレクトリにコピーされるだけなのでです。
[DestinationDirs]
DefaultDestDir = 13
この例では、ディスプレイ/ビデオ ドライバーの INF の DestinationDirs セクションのフラグメントを示します。
[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