コンピューター間テストの実行や RunAs などの一部の 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.ServiceCoreSystem で、Te.Service を実行しているコンソール アプリケーションを閉じます。
サポートされているプロセッサ アーキテクチャ
x86 バージョンと x64 バージョンの Te.Service では、x86 テストと x64 テストの実行がサポートされています。
セーフ モードのインストール手順
既定では、セーフ モードでサービスを開始することはできません。 Sc start Te.Service を実行しようとすると、次のエラーが表示されます。エラー 1084: このサービスをセーフ モードで開始できず、このエラーは (Windows) 設計によるものです。
TAEF サービスのセーフ モード機能を有効にするには、次の手順を実行する必要があります。
- Windows スプラッシュ画面の前に F8 キーを押して、コンピューターをセーフ モードで再起動します。
- [スタート] をクリックし、[実行] をクリックし、「regedit」と入力して、[OK] をクリックします。
- 次のレジストリ サブキーを見つけてクリックします。
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal (純粋セーフ モードの場合)
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Network (ネットワークを使用したセーフ モードの場合)
- [編集] メニューの [新規作成] をポイントし、[キー] をクリックし、「Te.Service」と入力します。
- [既定値] をダブルクリックし、[値データ] ボックスに「サービス」と入力し、[OK] をクリックします。
- レジストリ エディターを終了して、コンピューターを再起動します。
- 昇格権限を持つコマンド ウィンドウを開きます。
- これで、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));