IntervalZero RTX64 4.x 帮助文档

⌘K
  1. 主页
  2. 文档
  3. IntervalZero RTX64 4.x 帮助...
  4. RTX64 工具和实用程序...
  5. StampTool

StampTool

RTSS 和 RTDLL 应用程序在构建时,需要有效的 RTX64 SDK 许可证才能生成可运行的可执行文件。如果不存在有效许可证,仍然可以生成 RTSS 或 RTDLL,但无法运行。

RTX64 通过 StampTool(标记工具)来许可 RTSS 和 RTDLL。该工具将验证 SDK 许可证,然后对 RTSS 或 RTDLL 二进制文件进行标记。从以下目录访问 StampTool.exe%RTX64COMMON%\bin(默认为 C:\Program Files\IntervalZero\Common\bin


关于 RTSS 和 RTDLL 标记

RTX64 使用文件标记方式确保 .rtss.rtdll 的真实性和完整性。为文件标记(Stamp),和数字签名类似,可以确保文件是使用合法授权的 RTX64 SDK 构建的。

文件类型

使用 StampTool 对以下文件类型进行标记。

文件扩展名内容
.rtssRTSS 应用程序提供实时功能,并在 RTX64 子系统内运行
.rtdllRTDLL 是动态库,可以使用标准 LoadLibrary 和 FreeLibrary 隐式调用,或链接到 RTSS 应用程序来加载和卸载

重要提示!如果 RTSS 或 RTDLL 二进制文件未成功标记,或 StampTool 无法验证有效的许可证,则 RTSS/RTDLL 无法在零售 Runtime 上运行。


标记 RTSS 应用和 RTDLL

通过 RTX64 应用程序或 RTDLL 模板创建的 RTSS 或 RTDLL 二进制文件,将自动使用 StampTool 进行标记。所有未使用模板构建的应用程序都必须使用 StampTool 手动标记。

注意:如果没有 Visual Studio 项目设置中 RTX64 版本的有效 SDK 许可证,则 RtssRelease RtssDebug 配置构建将会失败。(RTSS 二进制文件仍会生成,但无法加载和运行)。

手动标记 RTSS/RTDLL:

  1. 以管理员身份打开命令提示符;
  2. 输入 stamptool,以及 RTSS 或 RTDLL 二进制文件的路径;

例如:

stamptool "C:\Users\Administrator\Documents\Visual Studio Version\Projects\RtxApp2\RTSSDebug\rtxapp2.rtss"

此外,可以在文件路径之前键入 /info 显示二进制文件的信息,而不对其进行标记。此信息包括文件是否已被标记。

例如:

stamptool /info "C:\Users\Administrator\Documents\Visual Studio Version\Projects\RtxApp2\RTSSDebug\rtxapp2.rtss"

注意:路径可以是相对或绝对路径,但必须引用 RTSS 或 RTDLL 二进制文件。如果路径名包含空格,则必须将其括在双引号中,如上例所示。

在 VISUAL STUDIO 中将 STAMPTOOL 设置为构建后事件:

对于不是由 RTX64 应用程序或 RTDLL 模板构建的应用程序,可以在项目属性中创建事件,在随后构建应用程序时,自动标记 RTSS/RTDLL。

  1. 解决方案资源管理器(Solution Explorer)窗口中,右键单击该项目,选择属性(Properties)
  2. 属性页(Property Pages)对话框中,选择配置属性(Configuration Properties)
  3. 单击生成事件(Build Events),再单击生成后事件(Post-Build Event)
  4. 在命令行字段中,输入:“%RTX64Common%\bin\StampTool.exe”“$(TargetPath)”
  5. 将在构建中使用(Use In Build)设置为是(Yes)
  6. 单击确定(OK)

更改目标名称

如果需要在 Visual Studio 中更改 RTSS 或 RTDLL 的目标名称配置属性,需要对项目的设置进行另外的更改。如,目标名称属性的默认值为“$(ProjectName)”

将其更改为“NewTargetName”后,项目设置将如下所示:

对项目设置进行上述修改后,RTX64 StampTool 将无法找到生成的二进制文件。此时必须更改链接器(Linker)属性的常规(General)部分,在输出文件的属性中,将二进制文件的名称指定为 NewTargetName

对项目设置的上述更改完成后,即可构建项目。

注意:以上设置在项目的 RTSSDebug 和 RTSSRelease 解决方案配置中都要完成。