INF RenFiles 指令
注意
如果正在生成通用或 Windows 驱动程序包,则本指令无效。 请参阅使用通用 INF 文件和 Windows 驱动程序开发入门。
RenFiles 指令引用 INF 文件中其他地方的 INF 编写器定义的部分,并导致在对引用 RenFiles 指令的部分进行操作时重命名该文件列表。
[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)
Renfiles=file-list-section[,file-list-section]...
RenFiles 指令可以在正式语法语句所示的任何部分中指定。 此指令也可以在以下任何 INF 编写器定义的部分中指定:
- 由 DDInstall.Interfaces 部分中的 AddInterface 指令引用的 add-interface-section。
- 在 InterfaceInstall32 部分中引用的 install-interface-section。
RenFiles 指令引用的每个已命名部分都有一个或多个条目,其形式如下:
[file-list-section]
new-dest-file-name,old-source-file-name
...
file-list-section 可以有任意数量的条目,每个条目单独一行。
条目
new-dest-file-name
指定目标文件的新名称。
old-source-file-name
指定文件的旧名称。
注解
重要
必须谨慎使用此指令。 强烈建议不要在即插即用 (PnP) 功能驱动程序的 INF 文件中使用 RenFiles 指令。
任何 file-list-section 名称在 INF 文件中都必须是唯一的,但可以被同一 INF 文件中的 CopyFiles、DelFiles 或 RenFiles 指令引用。 此类 INF-writer-defined 部分名称必须遵循定义部分名称的一般规则。 有关这些规则的详细信息,请参阅 INF 文件的常规语法规则。
RenFiles 指令不支持使用系统定义的平台扩展名(.nt、.ntx86、.ntia64、.ntamd64、.ntarm 或 .ntarm64)来修饰 file-list-section 名称。
INF 文件的 DestinationDirs 部分控制所有文件重命名操作的目标,与包含特定 RenFiles 指令的部分无关。 以下规则描述了文件重命名操作:
如果 RenFiles 指令引用的命名部分在同一 INF 的 DestinationDirs 部分中有相应的条目,则该条目会明确指定目标目录。 在复制这些源文件之前,命名部分列出的所有文件都会在目标上重命名。
如果命名部分未列在 DestinationDirs 部分中,Windows 将使用 INF DestinationDirs 部分中的 DefaultDestDir 条目。
注意
不能使用 %strkey% 标记来指定新文件名或旧文件名。 有关 %strkey% 标记的详细信息,请参阅 INF 字符串部分。
示例
此示例显示了一个由 RenFiles 指令引用的部分。
[RenameOldFilesSec]
devfile41.sav, devfile41.sys