Te.Service

某些 TAEF 功能(如 跨计算机测试执行运行方式)要求安装并启动 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 的控制台应用程序。

支持的处理器体系结构

x86 和 x64 版本的 Te.Service 都支持执行 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));