MicrosoftGame.config Element - Executable
特定の実行可能ファイルの詳細を指定します。 このセクションの属性には、実行可能ファイルの名前 (Name)、ビルド対象のデバイス (TargetDeviceFamily)、アプリケーション ID (Id)、開発専用の実行可能ファイルかどうか (IsDevOnly)、ShellVisuals ノードからの表示名をオーバーライドするかどうか (OverrideDisplayName)、ShellVisuals ノードからのロゴをオーバーライドするかどうか (OverrideLogo)、ShellVisuals ノードからの Square480x480Logo をオーバーライドするかどうか (OverrideSquare480x480Logo)、ShellVisuals ノードからの Square44x44Logo をオーバーライドするかどうか (OverrideSquare44x44Logo)、ShellVisuals ノードからの SplashScreenImage をオーバーライドするかどうか (OverrideSplashScreenImage)、および実行可能ファイルにエイリアスがあるかどうか (Alias (現時点ではデスクトップのみ)) が含まれます。
親
この要素の親は ExecutableList 要素です。
要件
この要素の設定は必須です。
プラットフォーム
この要素は、PC と本体に関係します。
動作
- 属性は以下のとおりです。
- Name
- TargetDeviceFamily
- id
- IsDevOnly
- OverrideDisplayName
- OverrideLogo
- OverrideSquare480x480Logo
- OverrideSquare44x44Logo
- OverrideSplashScreenImage
- エイリアス
- 既定値は次のとおりです。
- Name 属性には既定値がありません。
- TargetDeviceFamily 属性の既定値は、タイトルを実行するすべてのデバイスです。
- id 属性は、Name 属性に基づく既定値を持ちます。 Name 属性が有効な id を生成できない場合は、Game0 のフォールバックが使用されます。
- IsDevOnly 属性の既定値は false です。
- OverrideDisplayName 属性は、ShellVisuals で対応する属性の既定値を持っています。
- OverrideLogo 属性は、ShellVisuals で対応する属性の既定値を持っています。
- OverrideSquare480x480Logo 属性は、ShellVisuals で対応する属性の既定値を持っています。
- OverrideSquare44x44Logo 属性は、ShellVisuals で対応する属性の既定値を持っています。
- OverrideSplashScreenImage 属性は、ShellVisuals で対応する属性の既定値を持っています。
- エイリアスに既定値はありません。
- 許可される値は次のとおりです。
- Name の許可される値は、ゲーム ルートからの相対パスにある実行ファイルです。
- TargetDeviceFamily の許可される値は XboxOne、Scarlett、PC です。
- id の許可される値は、64 文字以内の ASCII 文字列です。
- IsDevOnly の許可される値は、true または false です。
- OverrideDisplayName の許可される値は、256 文字以内の文字列です。
- OverrideLogo の許可される値は、.png ファイルへの相対ファイル パスです。
- OverrideSquare480x480Logo の許可される値は、.png ファイルへの相対ファイル パスです。
- OverrideSquare44x44Logo の許可される値は、.png ファイルへの相対ファイル パスです。
- OverrideSplashScreenImage の許可される値は、.png ファイルへの相対ファイル パスです。
- エイリアスの許可される値は、実行可能な名前 (Name と同じですが、パスを持つことはできません) です。
解説
- Name 属性は必須です。
- TargetDeviceFamily 属性はパッケージ化に必須です。
Executable と TargetDeviceFamily
Executable 要素は、タイトル実行可能ファイルの属性を設定することを目的としています。 この要素は、DLC パッケージの構成には適用されません。
開発時には、ルース ファイルの配置用に任意の数の Executable 要素を ExecutableList 要素で定義できます。 最終パッケージ提出前にパッケージ化するときは、複数の Executable 要素がサポートされており、IsDevOnly 属性を持つ実行可能ファイル要素はいくつでもパッケージに含まれます。
ただし、マスタリングと認定のための最終的なパッケージの提出中に、IsDevOnly 属性を持つ実行可能ファイルは、MicrosoftGame.config ファイルとパッケージの内容から手動で削除する必要があります。 2024 年 3 月 GDK より前の isDevOnly 実行可能ファイルは、暗号化されたパッケージ生成の一部として自動的に削除されました ( MakePkg.exe pack/lk または /l で署名されています)。 isDevOnly 実行可能ファイルが見つかった場合、サブミッション バリデーターは引き続き FAILURE を発行します。
ExecutableList 要素に Executable 要素を指定する場合は、TargetDeviceFamily という属性を指定できます。 これは、実行可能ファイルのビルド対象のターゲット デバイスを指定することを目的としています。 TargetDeviceFamily 属性に指定できる値は、Xbox One、Scarlett、および PC です。
Xbox 本体に対する MakePkg pack の実行時に Executable に TargetDevieFamily 属性が定義されていない場合、パッケージ化は既定で XboxOne TargetDeviceFamily になります。 /pc フラグを MakePkg pack に指定すると、Executable に TargetDeviceFamily 属性が定義されていない場合、パッケージ化は既定で PC TargetDeviceFamily になります。 MakePkg.exe では、MicrosoftGame.config 内のすべての実行可能ファイルが同じ TargetDeviceFamily の指定 を使用して、タイトルのパッケージを適切に生成する必要があります。 ExecutableList 要素内の 2 つ以上の TargetDeviceFamily 属性を使用して MakePkg.exe を実行しようとすると、次のエラーが表示されます。
Error: All executables must have the same value for TargetDeviceFamily in the MicrosoftGame.config file when building a package. (エラー: パッケージのビルド時には、すべての実行可能ファイルが MicrosoftGame.config ファイル内の TargetDeviceFamily に対して同じ値を使用する必要があります。) (XboxOne と Scarlett を検出)
ExecutionAlias
Executable 要素からの Alias 属性は、PC タイトルをそのエイリアス名とタイトル ID を使用してコマンド プロンプトから 起動するための ExecutionAlias 機能の恩恵を受けるために使用できます。
Alias 属性は実行可能ファイルの名前に設定する必要があります。こうすることで、エイリアス使用時に必ずタイトルの登録が完了され、ID が正しい状態になります。 実行可能ファイルの現在のディレクトリでエイリアスが使用されている場合、Windows はエイリアスではなく実行可能ファイル名に直接従います。このため登録と正しい ID の利点はこのシナリオでは利用できません。 実行可能ファイルの現在のディレクトリがローカル PC 上の %PATH% 環境変数内にある場合も、Windows はエイリアスの代わりに実行可能ファイルに従います。
コマンド プロンプトで実行可能ファイルのエイリアスを実行するときは、<ExecutionAlias> [launch args]
の使用方法によりタイトルの引数を提供できます。
タイトルを PC で起動することの詳細については、「Microsoft Game Development Kit ツールを利用して PC タイトルをインストールして起動する」を参照してください。