Stampinf 命令选项

Stampinf 是更新常见 INF 文件指令的命令行工具。

Stampinf -f filename 
[-s section] 
[-d [date | *]] 
[-a [architecture]] 
[-c catalogfile]
[-v [time | *]]
[-k version] 
[-u version]
[-i path]
[-n]

参数

-ffilename
指定要处理的 INF 或 INX 文件。

-s
指定要在其中放置 INF DriverVer 指令的 INF 部分。 此指令所在的默认位置是 INF Version 部分

-d [ date | \]
指定在 INF DriverVer 指令中写入的日期。 日期的格式为月/日/年
(例如 -d 10/20/2011) 。

若要使用当前日期,请使用此参数指定星号 (*) 。

如果未指定 -d 参数或未指定任何选项,Stampinf 将使用以下日期值之一:

  • 如果已设置 STAMPINF_DATE 环境变量,则 Stampinf 将使用此环境变量指定的日期值。

  • 如果未指定 STAMPINF_DATE 环境变量,则 Stampinf 将使用当前日期。

-a [architecture]
指定 architecture 字符串来替换 INX 文件中使用的 $ARCH$ 变量。 $ARCH$ 变量用于将 INF Manufacturer 节中的 TargetOSVersion 修饰及其各自的分区名称自定义为特定平台。 有关 $ARCH$ 变量的详细信息,请参阅 使用 INX 文件创建 INF 文件

体系结构字符串的值为 x8664 ((对于基于 Itanium 的平台) )和 x64 ((对于 amd64 平台) )。

如果未指定 -a 参数或未指定任何选项,Stampinf 将使用平台环境变量(在生成环境窗口中设置)指定的值。

-ccatalogfile
指定在 INF Version 部分中的 CatalogFile 指令中写入的值。 默认情况下不写入 CatalogFile 指令。

-v [time| *]
指定在版本号的 INF DriverVer 指令中写入的时间。 时间格式为 hours.minutes.seconds.milliseconds(例如,11.30.20.15)。 此选项在开发过程中非常有用,因为通过它可以方便地提高驱动程序的版本号。

若要使用当前时间,请在此参数中指定星号 (*)。

如果未指定 -v 参数或未指定任何选项,Stampinf 将使用以下版本号值之一:

  • 如果已设置 STAMPINF_VERSION 环境变量,则 Stampinf 将使用此环境变量指定的版本号值。

  • 如果未指定STAMPINF_VERSION环境变量,Stampinf 将从 Ntverp.h 文件中提取版本号。

-k版本
指定此驱动程序所依赖的 KMDF 版本 。 这用于自定义 INF 文件中的 KmdfLibraryVersion 和 KMDF 辅助安装程序的名称。 此选项取代了 INF 文件中的 $KMDFVERSION$ 和 $KMDFCOINSTALLERVERSION$ 关键字。 该字符串采用以下格式:

<>major_version。<minor_version>

例如,如果你将 1.5 指定为版本字符串,则两个关键字将分别使用值 1.5 和 01005。

-u版本
指定此驱动程序依赖的 UMDF 的版本。 此选项用于指定 INF 文件中的 UmdfLibraryVersion 和 UMDF 辅助安装程序的名称。 指定的版本 将取代 INF 文件中的 $UMDFVERSION$ 和 $UMDFCOINSTALLERVERSION$ 关键字。 版本字符串的 具有以下格式:

<major_version>.<minor_version>.<service_version>

(其中,<service_version> 通常为零)。

例如,如果你将 1.5.0 指定为版本字符串,则最大和最小关键字将分别使用值 1.5.0 和 01005。

-n
显示详细的 Stampinf 输出。

-i路径
指定 Ntverp.h 文件的位置。 路径表示包含 Ntverp.h 的目录的完全限定位置

注释

Stampinf 放入 INF DriverVer 指令 中的日期值不基于 协调世界时 (UTC) ,也称为 格林威治标准时间。 但是, Inf2Cat 将此 INF 指令的日期值解释为 UTC 值。 如果 Inf2Cat 将 Stampinf 使用的本地日期值解释为明天日期的 UTC 值,这可能会导致错误。 若要避免此问题,请执行下列操作 之一

  • 将 STAMPINF_DATE 环境变量设置为适当的 UTC 日期值。 现在运行 Stampinf 而不指定 -d 参数。 这会指示 Stampinf 使用由STAMPINF_DATE环境变量指定的日期值。 现在,Stampinf 和 Inf2Cat 都使用 UTC。
  • 更改驱动程序包项目设置,以便 Inf2Cat 设置 /uselocaltime。 为此,请使用“配置属性”->“Inf2Cat”->“常规”->“使用本地时间”。 现在,Stampinf 和 Inf2Cat 都使用本地时间。

开发驱动程序时,可以设置环境变量PRIVATE_DRIVER_PACKAGE。 设置此变量后,Stampinf 会将用于 INF DriverVer 指令 的日期和时间设置为当前日期和时间,而不考虑命令行设置。 此外,Stampinf 设置 CatalogFile 指令。 Stampinf 在 INF 版本部分中写入 CatalogFile=delta.cat,除非已使用 -c 命令选项指定目录。

在生成窗口中键入以下命令以启用此开发模式:

set PRIVATE_DRIVER_PACKAGE=1