Games for Windows テスト要件
Microsoft Corporation
Version 1.3.0008
2008 年 3 月
このガイドラインに記載されている情報は、このドキュメントの発行時点におけるマイクロソフトの見解を反映したものです。変化する市場状況に対応する必要があるため、これらの見解は変更される場合があります。マイクロソフトは、このドキュメントの内容に関して、明示的か暗黙的かを問わず、一切保証致しません。法律によって許可される場合を除き、マイクロソフトの書面による許可なくこのドキュメントを複製することを禁じます。
このドキュメントの使用方法
このドキュメントは次の 3 つの主要セクションで構成されています。
- テスト要件
- テスト手順の例
- テスト ツールの説明
テスト要件
このドキュメントの各テスト要件は、4 つの主要セクション (タイトルと、表の左端の列、右上のボックス、右下のボックスの 3 つの重要セクション) で構成されています。
- タイトル
テスト ケースの名前 - 表の左端の列
テスト ケースが適用されるオペレーティング システムの名前 - 表の右上のボックス
テスト ケースの概要 - 表の右下のボックス
実際のテスト ケースの詳細
テスト手順の例
このセクションでは、テスト要件を参考として、標準的なテスト パスの例を示します。
テスト ツールの説明
このセクションでは、テスト要件の条件の合否判定に使用する各テスト ツールについて詳しく説明します。
テスト要件
- 1. ゲームの要件
- 2. セキュリティおよび互換性
- 3. インストール
- 4. 信頼性
1. ゲームの要件
- 1.1 Windows Vista のゲーム エクスプローラー
- 1.2 Windows Vista の保護者による制限
- 1.3 Windows Vista のリッチ セーブ データ
- 1.4 Xbox 360 Controller for Windows
- 1.5 マルチアスペクトおよびマルチ解像度のサポート
- 1.6 Windows Media Center
- 1.7 Direct 3D
1.1 Windows Vista のゲーム エクスプローラー
Windows Vista |
ゲームは、Windows Vista のゲーム エクスプローラー内に表示される必要があります。また、ゲームを選択すると、正しいメタデータが表示されなければなりません。インストール時に、ゲームを起動するショートカットをデスクトップ、スタート メニュー、およびその他の場所に作成してはいけません。削除のためのタスクおよびショートカットを作成してはいけません。 |
|
1.2 Windows Vista の保護者による制限
Windows Vista |
ゲームは "標準ユーザー" のコンテキスト内で動作する必要があります。保護者による制限でゲームがプレイできることを禁止する必要があります。GDF に EXE 名が含まれていることを確認します。 |
|
1.3 Windows Vista のリッチ セーブ データ
この要件は廃止されました。
1.4 Xbox 360 Controller for Windows
Windows Vista Windows XP |
ゲームパッド コントローラーをサポートするゲームでは、XInput API を使用して Xbox 360 Controller for Windows をサポートする必要があります。共通コントローラーのトリガーおよびボタンを参照する場合はすべて、Xbox 360 の名前を使用する必要があります。 |
注 ゲームでゲーム コントローラーをサポートしていない場合や、キーボード/マウスのみをサポートしている場合は、このテスト ケースをスキップしてください。 ** コントローラーの設定はゲームの外部にある場合があります。 |
1.5 マルチアスペクトおよびマルチ解像度のサポート
Windows Vista Windows XP |
ゲームでは、最低限、次に示す縦横比および関連する画面解像度をサポートする必要があります。
|
|
1.6 Windows Media Center
この要件は廃止されました。
1.7 Direct 3D
Windows Vista Windows XP |
ゲームで Direct3D を使用する場合は、Direct3D 9 以上のバージョンをサポートする必要があり、どの表示構成オプションに対しても Direct3D を既定の設定とする必要があります。 |
手動
自動テスト
|
2. セキュリティおよび互換性
- 2.1 ユーザー アカウント制御のガイドラインの遵守
- 2.2 x64 バージョンの Windows Vista のサポート
- 2.3 ファイルの署名
- 2.4 ドライバーの署名
- 2.5 適切なバージョン チェックの実行
- 2.6 同時ユーザー セッションのサポート
- 2.7 長い名前のサポート
2.1 ユーザー アカウント制御のガイドラインの遵守
Windows Vista |
アプリケーションに含まれているすべての実行可能ファイル (拡張子 .EXE) に、その実行レベルを定義する次のマニフェストが埋め込まれていなければなりません。
|
使用するツール : Mt.exe |
2.2 x64 バージョンの Windows Vista のサポート
Windows Vista |
x64 バージョンの Windows との互換性を維持するために、次の要件に従う必要があります。
|
手動テスト
|
2.3 ファイルの署名
Windows Vista Windows XP |
すべての実行可能コード ファイル (拡張子.exe や .dll など) は、Authenticode 証明書によって署名されていなければなりません。 Windows インストーラーを使用する場合は、インストーラーのパッケージ ファイル (.msi ファイル) が署名されていなければなりません。 |
手動テスト
|
2.4 ドライバーの署名
Windows Vista Windows XP |
ゲームによってインストールされるカーネルモード ドライバーは、いずれも公的に有効な Authenticode 証明書によって署名されている必要があります。 ゲームによってインストールされるすべてのカーネルモード ハードウェア デバイス ドライバーには、Windows Hardware Quality Labs (WHQL) または Driver Reliability Signature (DRS) プログラムから取得した Microsoft 署名が必要です。 |
手動テスト
|
2.5 適切なバージョン チェックの実行
Windows Vista Windows XP |
使用許諾契約書で将来のオペレーティング システムでの使用を禁止している場合を除き、Windows のバージョン番号の変更によって示される将来のオペレーティング システムでもゲームが引き続き動作する必要があります。新しいバージョンで動作しない場合は、ユーザーにメッセージを表示して、正常に終了する必要があります。 |
手動テスト
自動テスト
|
2.6 同時ユーザー セッションのサポート
Windows Vista Windows XP |
ゲームでは、Windows の標準的なマルチタスク シナリオをサポートする必要があります。 |
Windows Vista で、Toby という標準ユーザー アカウントを作成します。[スタート]、[コントロール パネル]、[ユーザー アカウントの追加または削除]、[新しいアカウントの作成] の順にクリックします。
|
2.7 長い名前のサポート
Windows Vista Windows XP |
ゲームでファイルの保存をサポートしている場合は、長い名前およびパスを使用するファイルを保存できるようにする必要があります。ファイル名またはパスの作成に使用されるユーザー入力フィールドに入力された特殊なファイル システム文字 (\、/、:、*、?、"、<、> など) がゲームで適切に処理されなければなりません。 |
|
3. インストール
- 3.1 簡易インストールのサポート
- 3.2 インストール時のユーザー アカウント制御のサポート
- 3.3 正しいフォルダーへのインストール
- 3.4 Windows リソースの適切なインストール
- 3.5 インストール中の再起動の回避
- 3.6 正しいファイル バージョン管理の使用
- 3.7 自動実行のサポート
3.1 簡易インストールのサポート
Windows Vista Windows XP |
従来型のインストールを行うゲームでは、セットアップ ユーザー インターフェイスに単純な手順を用意する必要があります。 |
|
3.2 インストール時のユーザー アカウント制御のサポート
Windows Vista |
ゲームのインストーラーがユーザーと同じコンテキストで動作しているとは仮定しないでください。したがって、ゲームではインストールとは別に、最初の実行でユーザーごとのタスクを実行する必要があります。 |
|
3.3 正しいフォルダーへのインストール
Windows Vista Windows XP |
ゲームは、標準で Program Files フォルダーにインストールされるようにする必要があります。ユーザー データは、インストール時ではなく、最初の実行時に書き込まれるようにする必要があります。 |
注 この場所にインストールされていない場合は、すべてのユーザー向けにゲームをインストールしているかどうか確認します。その場合は、テスト結果は失敗となります。 |
3.4 Windows リソースの適切なインストール
Windows Vista |
アプリケーションは、Windows リソース保護 (WRP) によって保護されたファイルまたはレジストリ キーをインストールすることはできません。 |
|
3.5 インストール中の再起動の回避
Windows Vista Windows XP |
ゲーム インストーラーでは、戻り結果またはマイクロソフトのドキュメントによって再起動が指示されている場合を除き、再配布パッケージ内の Windows コンポーネントのインストール時に再起動が必要であることを前提としてはいけません。 |
|
3.6 正しいファイル バージョン管理の使用
Windows Vista |
ゲームのインストール プログラムでは、最新バージョンのファイルがインストールされることを適切に確認する必要があります。このゲームで生成する以外のファイル、およびこのゲームで生成される以外のアプリケーションで共有されるファイルが、ゲームのインストールによって古いバージョンに戻ることのないようにする必要があります。 |
|
3.7 自動実行のサポート
Windows Vista Windows XP |
CD、DVD、またはその他の自動実行をサポートするリムーバブル メディアで配布されるゲームでは、ディスクが初めて挿入されたときに、アプリケーションが自動的に実行されるようにするか、またはゲームのインストールを促すダイアログがユーザーに表示されるようにする必要があります。 |
|
4. 信頼性
- 4.1 不要な再起動の回避
- 4.2 Application Verifier のエラーの回避
- 4.3 Windows エラー報告のサポート
4.1 不要な再起動の回避
Windows Vista |
アプリケーションのインストーラーはすべて、再起動マネージャー API を利用して、システムの再起動を回避する必要があります (要件 3.5 を参照)。 |
4.2 Application Verifier のエラーの回避
Windows Vista |
Microsoft Application Verifier (AppVerifier) バージョン 3.3 以降での実行時に、次のテストでエラーが生成されないようにする必要があります。
|
使用するツール : AppVerifier 3.3 以降
注 一部のテストでは、デバッガーを完全実行する必要があります。その場合、不正行為/海賊版対策テクノロジと AppVerifer が衝突する可能性があるため、ゲームの実行可能ファイルの非保護リリース バージョンが必要になることがあります。 |
4.3 Windows エラー報告のサポート
Windows Vista / Windows XP | ゲームでは既知の例外または予期される例外のみを処理する必要があり、Windows エラー報告を無効にしてはなりません。ゲームでエラー (アクセス違反など) を表示する場合は、Windows エラー報告でクラッシュ時のレポートができるようにする必要があります。 |
使用するツール : Thread Hijacker
|
Windows Vista / Windows XP | すべての実行可能 (.exe、.dll など) ファイルに、正確な製品名、会社名、およびファイル バージョンが含まれていなければなりません。 |
|
Windows Vista / Windows XP | ゲームが正常に終了したときに不明な例外が発生しないようにする必要があります。 |
|
5. テスト手順の例
ここでは、上記のテスト要件を参考として、標準的なテスト パスの例を示します。
- 5.1 ツール
- 5.2 インストール前
- 5.3 インストール
- 5.4 インストール後
- 5.5 ゲームの実行
- 5.6 ゲームの実行後
- 5.7 保護者による制限
- 5.8 自動テスト
- 5.9 その他のテスト
- 5.10 アンインストール
5.1 ツール
- x86 バージョンの Windows Vista SP1、AMD CPU
- x86 バージョンの Windows Vista SP1、Intel CPU
- x64 バージョンの Windows Vista SP1、AMD CPU
- x64 バージョンの Windows Vista SP1、Intel CPU
- x86 バージョンの Windows XP SP2、AMD CPU
- x86 バージョンの Windows XP SP2、Intel CPU
- 1680×1050 をサポートするワイドスクリーン モニター
- Xbox 360 Controller for Windows
5.2 インストール前
Windows Vista :Jane と Toby の 2 つの標準ユーザーを作成します。
Windows Vista :ユーザー アカウント制御が有効になっているのを確認します。
System32 のインストール前スナップショットを作成します。
- G4Wtest というディレクトリを作成します。
- コマンド ウィンドウを開きます ([スタート] メニューの [ファイル名を指定して実行] をクリックして「cmd」と入力します)。
- c:\windows\system32 に移動します。
- 「dir /o:-g /o:-d >> c:\G4Wtest\pregame.txt」と入力します。
「インストール」に進みます。
5.3 インストール
- ユーザー Jane としてログオンします。
- CD/DVD ドライブにゲーム ディスクを挿入し、インストール/実行のダイアログ ボックスが自動的に表示されることを確認します [3.7]。
- ゲームのインストール プロセスによって、ユーザー Jane に対して管理者の資格情報を要求するダイアログが表示されることを確認します [3.2]。
- ゲームの自動実行プログラム自体によって、ユーザー Jane に管理者の資格情報を要求するダイアログが表示されないことを確認します [3.7]。
- 使用許諾契約書 (EULA) が 1 回だけ表示される (何度も表示されない) ことを確認します [3.1]。
- 既定の簡易インストール オプションとカスタムの高度なインストール オプションが表示されることを確認します [3.1]。
- 既定の簡易インストール オプションを選択した場合、インストール プロセスでユーザーが入力するすべての選択 (インストール フォルダーやコンポーネントの選択など) が省略されることを確認します [3.1]。
- ゲームのインストール プロセスによって、OS コンポーネントのセットアップ (DirectX のセットアップや Visual C ランタイムなど) のダイアログが表示されないことを確認します [3.1]。
- ゲームのインストール プロセスによって、ファイアウォール インタラクションのダイアログが表示されないことを確認します [3.1]。
- ゲームのインストール プロセスで OS のバージョンに関連するエラーが発生しないことを確認します [2.5] [4.2]。
- ゲームのインストール プロセスによって、署名されていないドライバーのダイアログが表示されないことを確認します [2.4]。
- インストール プロセス中に Windows リソース保護 (WRP) ダイアログが表示されないことを確認します [3.4]。
- インストール後、ドライブにディスクを再挿入しても、インストールが自動的に再開されないことを確認します。
- ゲームをインストールした後にシステムの再起動が必要でないことを確認します [3.5]。
- ユーザー Jane としてゲームをインストールできることを確認します [3.2]。
- インストール プロセスの終わりに、ゲームが自動的に実行されるか、またはラウンチャー メニューが表示されることを確認します [3.1]。
- インストール後にゲームが自動的に起動する場合は、「ゲームの実行」に進んでください。
- 「インストール後」に進みます。
5.4 インストール後
ユーザーのデスクトップに、ゲームを起動するショートカットが作成されていないことを確認します [1.1]。
[スタート] メニューに、ゲームを起動するショートカットが作成されていないことを確認します [1.1]。
Windows ゲーム エクスプローラーにゲームのアイコンが表示されていることを確認します [1.1]。
メタデータ (パブリッシャー、開発者、ジャンル、リリース日、バージョン) が下部に表示されることと、それらのデータが正しいことを確認します [1.1]。
ゲーム アイコンによって Windows ゲーム エクスプローラーに Windows エクスペリエンス インデックス (WEI) 情報が表示されることを確認します [1.1]。
メタデータとして表示されるゲームのハイパーリンクが Windows ゲーム エクスプローラーで適切に動作することを確認します [1.1]。
Windows ゲーム エクスプローラーで、ゲームに対して保護者による制限の正確なレーティングが表示されることを確認します [1.1]。
System32 のインストール後スナップショットを作成します。
- コマンド ウィンドウを開きます ([スタート] メニューの [ファイル名を指定して実行] をクリックして「cmd」と入力します)。
- c:\windows\system32 に移動します。
- 「dir /o:-g /o:-d >> c:\G4Wtest\postgame.txt」と入力します。
- pregame.txt と postgame.txt を比較して、2 つのファイルにリストされているファイルが古いバージョンに戻っていないことを確認します [3.6]。
「ゲームの実行」に進みます。
5.5 ゲームの実行
ゲームの実行 1 :ラウンチャー メニューがある場合は、メニューからゲームを起動します。インストール後にゲームが自動実行されたか、またはラウンチャー メニューからゲームが起動された場合は、次の手順に従います。それ以外の場合は、「ゲームの実行 2」に進みます。
- プロフィールを作成します (ゲームでプロフィールの作成が可能な場合)。
- 新しいゲームを開始します。
- ゲームを保存します。
- ゲームを終了します。
- ゲーム エクスプローラーからゲームを起動します。
- ゲーム エクスプローラー アイコンからゲームを起動できることを確認します [1.2]。
- ゲームの起動時に管理者の資格情報を要求するダイアログが表示されないことを確認します [1.2]。
- ユーザー Jane のアカウントでユーザー プロフィールとセーブ データにアクセスできることを確認します [3.2]。
- 「ゲームの実行 3」に進みます。
ゲームの実行 2 :ゲームが自動実行されず、またゲームのラウンチャー メニューも表示されない場合は、[3.1] のテストに失敗しています。その場合も、通常どおりテストを継続して実行できます。
- ゲーム エクスプローラーからゲームを起動します。
- ゲーム エクスプローラー アイコンからゲームを起動できることを確認します [1.2]。
- ゲームの起動時に管理者の資格情報を要求するダイアログが表示されないことを確認します [1.2]。
- 「ゲームの実行 3」に進みます。
ゲームの実行 3 :ゲームがゲーム パッドをサポートしている場合は、入力デバイスとして Xbox 360 Controller for Windows が認識されることを確認します [1.4]。
- 必要に応じて、オプション メニューからコントローラーを有効にします。
- コントローラーのボタンおよびトリガーを参照する場合、Xbox 360 の名前を使用していることを確認します。
- Xbox 360 Controller for Windows でゲームとメニュー システムを操作できることを確認します。
- Xbox 360 Controller for Windows が一般に認められた標準に従って動作することを確認します。
ビデオを次の解像度に設定できることを確認します [1.5]。
- アスペクト比 4:3 の解像度 (800×600 または 1024×768) でゲームが動作することを確認します。
- アスペクト比 16:9 の解像度 (1280×720) でゲームが動作することを確認します。
- アスペクト比 16:10 の解像度 (1680×1050、800×480、または 1152×720) でゲームが動作することを確認します。
- ゲームの解像度が変更された場合、ユーザーに確認のダイアログが表示されることを確認します。
- ユーザーが 15 秒以内に承認しない場合は、表示が前の設定に戻ることを確認します。
- ゲームの画像が引き伸ばされ、表示領域が拡大されないことを確認します。
- ゲーム プレイ エリアの左右に黒いエリアが表示されないことを確認します。
ビデオ設定にレンダリング オプションがある場合は、既定の設定が Direct3D になっていることを確認します [1.7]。それ以外の場合は、「自動テスト」に進みます。
ダイアログが表示された場合、またはオプションがある場合は、ユーザー プロフィールを作成します。長いファイル名の使用時にゲームでエラーが発生しないことを確認します [2.7]。
新しいゲームを開始してセーブ データを作成し、サポートされていないファイル システム文字の処理時にゲームでエラーが発生しないことを確認します [2.7]。
Alt + Tab キーの操作でゲームから Windows のデスクトップに正常に戻ることを確認します [2.6]。
- [スタート] メニューの [ユーザーの切り替え] をクリックして、ゲームを実行したままユーザーを切り替えます。
- ユーザー Toby としてログオンします。
- ユーザー Jane として引き続きゲームを実行しながら、ユーザー Toby としてゲームを起動できることを確認します [2.6]。
- ユーザーの切り替え処理中に、ユーザー Toby とユーザー Jane のどちらで実行しているゲームにもエラーが発生しないことを確認します [2.6]。
- 元のゲーム セッションのオーディオが聞こえないことを確認します [2.6]。
- ゲームを終了します。
- Toby をログオフします。
- ゲームを実行している元のユーザーに再び切り替えます。
- Alt + Tab キーを押してゲームに戻ります。
ゲームを終了します。
「ゲームの実行後」に進みます。
5.6 ゲームの実行後
- ゲームの終了時にエラーが発生しないことを確認します [4.3]。
- ゲームが Program Files にインストールされていることを確認します [3.3]。
- 「保護者による制限」に進みます。
5.7 保護者による制限
コントロール パネルの [保護者による制限] を開きます。
コントロール パネルの [保護者による制限] で、ゲーム タイトルの下に保護者による制限の正確なレーティングが表示されることを確認します [1.2]。
テスト ケース [1.2] を参照して、次のテストを実行します。
[保護者による制限] を [有効] に設定した後、ユーザー Jane として、この設定でゲームが動作することを確認します [1.2]。
ログオフし、Toby としてログオンします。
ユーザー Toby として、この設定でゲームが動作することを確認します [1.2]。
ログオフし、Jane としてログオンします。
[保護者による制限] セクションで、ユーザー Toby ?u201 E‘\u206 I?u181 μ?u196 A、先ほどインストールしたゲームよりも ESRB レベルが 1 レベル以上高いゲームが表示されないようにします。
例 :ゲームのレーティングが E の場合、Toby はレーティング C のゲームのみを表示できるように設定します。
ユーザー Jane として、この設定でゲームが動作することを確認します [1.2]。
ログオフし、ユーザー Toby としてログオンします。
ユーザー Jane によって ESRB がブロックされている場合に、ユーザー Toby に対してゲームが起動しないことを確認します [1.2]。
ユーザー Toby をログオフし、再びユーザー Jane としてログオンします。
前の手順でレーティングを変更した場合は、元の ESRB 設定に戻します。
ESRB 設定がない場合は、[特定のゲームを禁止または許可] をクリックし、ゲームの名前を選択します。
Jane をログオフし、再び Toby としてログオンします。
ユーザー Jane によって EXE 名がブロックされている場合に、ユーザー Toby に対してゲームが起動しないことを確認します [1.2]。
Toby をログオフし、再び Jane としてログオンします。
Jane として、[ユーザーの制御] の [アプリケーションの制限] を開きます。
[Toby は許可されたプログラムのみ使用してもよい] をクリックし、そのまま [OK] をクリックします (つまり、どの EXE も許可しません)。
[すべて選択解除] ボックスをクリックして [OK] をクリックします。
[ユーザーの制御] の [ゲームの制御] を開き、ESRB レーティングを使用して特定のゲームを許可します。
Jane をログオフして Toby としてログオンし、ゲームをプレイしてみます。
"どの EXE も許可しない" 設定のときに、ゲームがブロックされず、Toby がプレイできることを確認します [1.2]。
ユーザー Toby をログオフし、再びユーザー Jane としてログオンします。
コントロール パネルの [保護者による制限] を開き、制限を解除します。
どちらのユーザーもゲームをプレイできることを確認します。
「自動テスト」に進みます。
5.8 自動テスト
- Application Verifier でのゲームの実行時にエラーが生成されないことを確認します。ブランド テスト ツールのドキュメントを参照してください [4.2]。
- ゲームの実行可能ファイルにマニフェストが含まれていることを確認します。ブランド テスト ツールのドキュメントを参照してください [2.1]。
- ゲームの実行可能ファイルのマニフェストの requestedExecutionLevel が "AsInvoker" になっていることを確認します。ブランド テスト ツールのドキュメントを参照してください [2.1]。
- 「その他のテスト」に進みます。
5.9 その他のテスト
ゲームの実行可能ファイルにデジタル署名が含まれていることを確認します [2.3]。
Windows Vista x64 でゲームのインストール プロセスが正常に動作することを確認します [2.3]。
Windows Vista x64 で、16 ビットの実行可能ファイルが原因でゲームにエラーが発生しないことを確認します [2.3]。
テスト中にアプリケーションをクラッシュさせ、ゲームによって Windows エラー報告が適切に表示され、クラッシュ データが収集されることを確認します [4.3]。
ファイルの概要が正しいことを確認します [4.3]。
[スタート] ボタンをクリックし、[コンピューター] をクリックします。
ゲーム ディレクトリに移動します。
検索ウィンドウに「*.dll」と入力します。
見つかったファイルごとに、ファイルを右クリックして [プロパティ] を選択します。
- Windows XP : [バージョン情報] タブをクリックします。[製品名]、[会社名]、[ファイル バージョン] の各フィールドに正しい情報が入力されていることを確認します。 [4.3]
- Windows Vista : [詳細] タブをクリックします。[製品名] と [ファイル バージョン] の各フィールドに正しい情報が入力されていることを確認します。Windows Vista のプロパティ ページでは、会社名は表示されません [4.3]。
.exe ファイルについても同じチェックを繰り返します。
ゲームを起動します。
- Ctrl + Alt + Del キーを押します。
- "シャットダウン オプション" の矢印をクリックします。
- [再起動] をクリックします。
- ゲームによってシャットダウンがブロックされないことを確認します [3.1]。
「アンインストール」に進みます。
5.10 アンインストール
ゲームのアンインストール プロセスによって、インストールされている、再配布以外のオペレーティング システム コンポーネント ファイルがすべて削除され、すべての設定がクリアされることを確認します [3.1]。
- Windows Vista で、コントロール パネルを使用した削除がプログラムを削除する唯一の方法であることを確認します [1.1]。
6. テスト ツールの説明
ここでは、上記のテスト要件に登場した各テスト ツールについて説明します。
- 6.1 Appverifier 3.3 (以降)
- 6.2 マニフェスト テスト - mt.exe
- 6.3 Thread Hijacker - threadhijacker.exe
6.1 Appverifier 3.3 (以降)
テスト ケース :2.5、4.2
注 一部のアプリケーションは、コピー防止機能の作用で AppVerifier の実行中には実行できません。これを解決するには、ゲーム実行可能ファイルの非保護のリリース バージョンを実行します。
AppVerifier 3.2 以降を Windows XP コンピューターにインストールします。
AppVerifier を起動し、[File] メニューの [Add Application] をクリックします。
ゲームの実行可能ファイルを探して選択し、[開く] をクリックします。
[Application] セクションで、ゲームの実行可能ファイルを選択します。
[Basics] セクションで、以下のテストを選択します。
- Handles
- Heaps
- Locks
- Memory
- TLS
[Miscellaneous] セクションで、以下のテストを選択します。
- DangerousAPIs
- DirtyStacks
他のテストはいずれも選択しません。
ゲームを起動します。
ゲームをプレイします。
ゲームを終了します。
AppVerifier で、[View] メニューの [Logs] を選択します。
[Application] セクションで、アプリケーションの .exe ファイルを選択します。
[Logs] セクションでログ ファイルを選択し、エラーの数を確認します。エラーがない場合は AppVerifier テストを終了します。エラーがある場合は、[View] ボタンをクリックします。
Severity="Error を指定してドキュメントを検索します (Ctrl + F キー)。
エラーの LayerName= 部分に基づいてバグを作成します。
6.2 マニフェスト テスト - mt.exe
テスト ケース : 2.1
このツールは、MT.exe が存在するディレクトリからコマンド プロンプトで実行します。
例 :
mt.exe -inputresource:"c:\yourdir\YourGame.exe";#1 -out:yourgame.manifest
[スタート] メニューの [ファイル名を指定して実行] をクリックして「cmd」と入力し、[OK] ボタンをクリックします。
mt.exe ツールを実行し、ゲームと共にインストールされる各 .exe ファイルの .manifest ファイルを生成します。
生成された .manifest ファイルを開きます。
各 .exe ファイルに以下の情報が含まれていることを確認します。
<description>Example Game Name</description> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> <security> <requestedPrivileges> <requestedExecutionLevel level="asInvoker"></requestedExecutionLevel> </requestedPrivileges> </security> </trustInfo>
6.3 Thread Hijacker - threadhijacker.exe
このツールは、threadhijacker.exe が存在するディレクトリからコマンド プロンプトで実行します。
例 :
threadhijacker.exe /process:str
str には、<プログラム名>.exe を指定します。
- タスク マネージャーを起動して [プロセス] タブをクリックし、ゲームの実行可能ファイルの名前を探します。
- 管理者モードでコマンド プロンプトを開きます。
- threadhijacker.exe があるディレクトリに移動します。
- 「threadhijacker.exe /process:str」と入力します。str には、対象の実行可能ファイル名を指定します。
リソース
- Games for Windows : 技術要件
Games for Windows : 技術要件 - Windows Vista SDK
MSDN ライブラリ - ユーザー アカウント制御のガイドライン
Guidelines for Applications in a Least Privileged Environment (最小特権環境のアプリケーションに関するガイドライン) - Windows インストーラー情報
https://go.microsoft.com/fwlink/?LinkId=3985 - WinQual 開発者ポータル
https://winqual.microsoft.com/member/wer/user/default.aspx - DirectX 開発者ポータル
Directx Developer Center (DirectX デベロッパー センター) - その他の DirectX SDK 記事
https://msdn2.microsoft.com/en-us/library/bb173039.aspx