Te.Service

某些 TAEF 功能(如 跨计算机测试执行RunAs)要求安装和启动 Te.Service。

安装和启动 Te.Service

  • 确保 Wex.Services.exe、Wex.Common.dll和 Wex.Communication.dll 都存在于同一目录中。 默认位置是 WDK 的 \Testing\Runtimes\TAEF 子目录

  • 在提升的命令提示符下,键入以下内容:

    cd [your Wex.Services.exe directory]
    Wex.Services.exe /install:Te.Service
    sc start Te.Service
    

    注意 在 CoreSystem 上,Te.Service 可以作为控制台应用程序而不是服务运行。

cd [your Wex.Services.exe directory]
Wex.Services.exe /run:Te.Service

停止和删除 Te.Service

  • 在提升权限的命令提示符下,键入以下内容:

    cd [your Wex.Services.exe directory]
    sc stop Te.Service
    Wex.Services.exe /remove:Te.Service
    

    在 CoreSystem 上,关闭运行 Te.Service 的控制台应用程序。

支持的处理器体系结构

Te.Service 的 x86 和 x64 版本都支持执行 x86 和 x64 测试。

安全模式安装说明

默认情况下,将无法在安全模式下启动服务。 尝试运行 sc start Te.Service 时,将收到以下错误:错误 1084:此服务无法在安全模式下启动,此错误由 (Windows) 设计。

若要启用 TAEF 服务安全模式功能,需要:

  • 在 Windows 初始屏幕之前按 F8,在安全模式下重启计算机。
  • 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
  • 找到并单击以下注册表子项:
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal(对于纯安全模式)
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Network(用于网络安全模式)
  • 在“编辑”菜单上,指向“新建”,单击“键”,然后键入 Te.Service。
  • 双击“默认”,在“值”数据框中键入“服务”,然后单击“确定”。
  • 退出注册表编辑器,然后重新启动计算机。
  • 使用提升权限打开命令窗口。
  • 现在,应使用 sc start Te.Service 成功启动服务

订阅通知

开发服务器运行测试时,可以订阅一些服务器通知,其方式类似于 HandlerEx 回调函数。 目前,仅支持SERVICE_CONTROL_SESSIONCHANGE控制代码。

订阅:

  • 使用 HandlerEx 回调函数的签名定义回调函数。
  • 使用 TAEF 通知 API 注册此函数
  • 如果不再想要接收通知,则取消注册此函数。
  • 将代码链接到 Te.Common.lib

示例:

    // define a call back function
    DWORD WINAPI HandlerEx(DWORD dwControl, DWORD dwEventType, LPVOID, LPVOID)
    {
        // Do some work here
        return 0;
    }

    // register the callback function to receive notifications
    TestNotification::RegisterHandler(HandlerEx));