UE-V 2.1 SP1 のアプリケーション テンプレート スキーマ リファレンス
Microsoft User Experience Virtualization (UE-V) 2.1 SP1 では、XML 設定の場所テンプレートを使用して、UE-V がキャプチャして適用するデスクトップ アプリケーション設定と Windows 設定を定義します。 UE-V には、既定の設定の場所テンプレートのセットが含まれています。 UE-V ジェネレーターを使用して、カスタム設定の場所テンプレートを作成することもできます。
高度なユーザーは、設定の場所テンプレートの XML ファイルをカスタマイズできます。 この記事では、UE-V 2.1 SP1 設定の場所テンプレートの XML 構造について詳しく説明し、これらのファイルを編集するためのガイダンスを提供します。
UE-V 2.1 SP1 アプリケーション テンプレート スキーマ リファレンス
このセクションでは、UE-V 2.1 SP1 設定の場所テンプレートの XML 構造について詳しく説明し、このファイルを編集するためのガイダンスを提供します。
XML 宣言とエンコード属性
必須: True
型: 文字列
XML 宣言では、XML バージョン 1.0 属性 (<?xml version="1.0">
) を指定する必要があります。 UE-V ジェネレーターによって作成された設定の場所テンプレートは UTF-8 エンコードで保存されますが、エンコードは明示的に指定されていません。 この要素には、ベスト プラクティスとして encoding="UTF-8" 属性を含めることをおすすめします。 製品に含まれるすべてのテンプレートも、このタグを指定します。 リファレンスについては、 %ProgramFiles%\Microsoft User Experience Virtualization\Templates
のドキュメントを参照してください。
以下に例を示します。
<?xml version="1.0" encoding="UTF-8"?>
Namespaceとルート要素
必須: True
型: 文字列
UE-V では、すべてのアプリケーションに https://schemas.microsoft.com/UserExperienceVirtualization/2012/SettingsLocationTemplate
名前空間が使用されます。
SettingsLocationTemplate
はルート要素であり、他のすべての要素が含まれています。 このタグを使用して、すべてのテンプレートで SettingsLocationTemplate
を参照します。
<SettingsLocationTemplate xmlns='https://schemas.microsoft.com/UserExperienceVirtualization/2012/SettingsLocationTemplate'>
データ型
これらの項目は、UE-V アプリケーション テンプレート スキーマのデータ型です。
GUID: GUID は、標準のグローバル一意識別子 (GUID) 正規表現 (regex) を
\{[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}\}
形式で記述します。 この GUID は、既知のフォルダーの書式設定を確認するために、Filesetting\Root\KnownFolder
要素で使用されます。FilenameString: FilenameString は、監視するプロセスのファイル名を参照します。 次の正規表現は、その値を制限します:
[^\\\?\*\|<>/:]+
。 つまり、次の文字を含めることはできません。- 円記号 (
\
) - アスタリスク (
*
) - 疑問符 (
?
) - パイプ文字 (
|
) - より大きい記号 (
>
) - より小さい記号 (
<
) - スラッシュ (
/
) - コロン (
:
)
- 円記号 (
IDString
:IDString
は、Application 要素、SettingsLocationTemplate、および Common 要素の ID 値を指します (共通設定を共有するアプリケーション スイートを記述するために使用されます)。 FilenameString ([^\\\?\*\|<>/:]+
) と同じ正規表現によって制限されます。TemplateVersion: TemplateVersion は、設定の場所テンプレートのリビジョンを記述するために使用される整数値です。 その値の範囲は 0 から2147483647です。
空: 空は null 値を参照します。 このデータは Process\ShellProcess で使用され、監視するプロセスがないことを示します。 この値は、どのアプリケーション テンプレートでも使用しないでください。
作成者: Author データ型は、テンプレートの作成者を識別する複合型です。 これには、 名前 と 電子メールの 2 つの子要素が含まれています。 Author データ型内では、Name 要素は必須ですが、Email 要素は省略可能です。 この型については、「SettingsLocationTemplate 要素」で詳しく説明します。
Range: Range は、2 つの子要素 ( Minimum と Maximum) で構成される整数クラス を定義します。 このデータ型は、ProcessVersion データ型に実装されます。 指定した場合は、最小値と最大値の両方を含む必要があります。
ProcessVersion: ProcessVersion は、Major、Minor、Build、Patch の 4 つの子要素を持つ型を定義します。 このデータ型は、Process 要素によって ProductVersion と FileVersion の値を設定するために使用されます。 この型のデータは Range 値です。 Major 子要素は必須であり、他の要素は省略可能です。
アーキテクチャ: アーキテクチャでは、 Win32 と Win64 の 2 つの値が列挙されます。 これらの値は、プロセス アーキテクチャを指定するために使用されます。
プロセス: プロセス データ型は、UE-V が監視するプロセスを記述するために使用されるコンテナーです。 ファイル 名、 アーキテクチャ、 ProductName、 FileDescription、 ProductVersion、FileVersion の 6 つの子要素が含 まれています。 次の表では、各要素のそれぞれのデータ型の詳細を示します。
要素 | データ型 | Mandatory |
---|---|---|
ファイル名 | FilenameString | True |
アーキテクチャ | アーキテクチャ | False |
ProductName | String | False |
FileDescription | String | False |
ProductVersion | ProcessVersion | False |
FileVersion | ProcessVersion | False |
プロセス: Process データ型は、1 つ以上の Process 要素のコレクションのコンテナーを表します。 Process シーケンス型では、 Process と ShellProcess の 2 つの子要素がサポートされています。 Process は Process 型の要素であり、ShellProcess はデータ型 Empty です。 シーケンス内で少なくとも 1 つの項目を識別する必要があります。
パス: パスは、レジストリとファイルのパスを参照するために RegistrySetting と FileSetting によって使用されます。 この要素は、 再帰的 属性と DeleteIfNotFound 属性の 2 つの省略可能な属性をサポートします。 どちらの値も default="False" に設定されます。
再帰は、パスとすべてのサブフォルダーがファイル設定に含まれていること、またはレジストリ設定にすべての子レジストリ キーが含まれていることを示します。 どちらの場合も、現在のレベルのすべての項目がキャプチャされたデータに含まれます。 FileSettings オブジェクトの場合、指定したフォルダー内のすべてのファイルは UE-V によってキャプチャされたデータに含まれますが、フォルダーは含まれません。 レジストリ パスの場合、現在のパス内のすべての値がキャプチャされますが、子レジストリ キーはキャプチャされません。 どちらの場合も、大量のデータ セットや大量の項目をキャプチャしないように注意する必要があります。
DeleteIfNotFound 属性は、ユーザーの設定ストレージ パス データから設定を削除します。 この属性は、パッケージからこれらの設定を削除すると、設定のストレージ パス ファイル サーバーに大量のディスク領域が保存される場合に役立ちます。
FileMask: FileMask は、Path 属性が定義するフォルダーの特定のファイルの種類のみを指定します。 たとえば、Path を
C:\users\username\files
し、FileMask を*.txt
してテキスト ファイルのみを含めることができます。RegistrySetting: RegistrySetting は、レジストリ キーと値のコンテナーと、UE-V エージェントの一部で関連する必要な動作を表します。 この型には、 Path、 Name、 Exclude の 4 つの子要素と、 値 Path と Name のシーケンスが定義されています。
FileSetting: FileSetting には、ファイルとファイル のパスに関連付けられているパラメーターが含まれています。 ルート、パス、FileMask、および Exclude の 4 つの子要素が定義されています。 ルートは必須であり、他のルートは省略可能です。
設定: Settings 属性は、特定のテンプレートに適用されるすべての設定のコンテナーです。 これには、前に説明したレジストリ、ファイル、SystemParameter、CustomAction 設定のインスタンスが含まれています。 さらに、動作が記述された次の子要素を含めることもできます。
要素 | 説明 |
---|---|
非同期 | 非同期設定パッケージは、設定がまだ適用されている間にアプリケーションの起動が続行されるように、アプリケーションの起動をブロックせずに適用されます。 この要素は、SystemParameterSetting などの API を介して get/set するなど、非同期的に適用できる設定に役立ちます。 |
PreventOverlappingSynchronization | 既定では、UE-V は、テンプレートを使用するアプリケーションの最後のインスタンスが閉じられた場合にのみ、アプリケーションの設定を保存します。 この要素が false に設定されている場合、UE-V は、アプリケーションの他のインスタンスが実行されている場合でも設定をエクスポートします。 UE-V に付属する Common 要素セクションを含む適切なテンプレートは、このフラグを使用して、最後のインスタンスが閉じられるまでアプリケーション固有の設定がエクスポートされないようにしながら、共有設定を常にアプリケーションを閉じてエクスポートできるようにします。 |
AlwaysApplySettings | このパラメーターは、パッケージとアプリケーションの現在の状態に違いがない場合でも、インポートされた設定パッケージを強制的に適用します。 このパラメーターは、設定のインポートが遅くなる可能性があるため、特殊なケースでのみ使用する必要があります。 |
Name 要素
必須: True
型: 文字列
[名前] は、設定の場所テンプレートの一意の名前を指定します。 これは、WMI、PowerShell、イベント ビューアー、デバッグ ログでテンプレートを参照するときに表示目的で使用されます。 一般に、バージョン情報の参照は避けてください。これは ProductVersion 要素からオブジェクト化できるためです。 たとえば、<Name>My Application 1.1</Name>
ではなく<Name>My Application</Name>
を指定します。
注
UE-V は外部 DTD を参照しないため、設定の場所テンプレートで名前付きエンティティを使用することはできません。 たとえば、 ®
を使用して、登録済みの商標記号 (®
) を参照しないでください。 代わりに、標準の番号付き参照を使用して、これらの種類の特殊文字 (たとえば、登録商標文字 (®
) の®
) を含めます。 この規則は、このドキュメントのすべての文字列値に適用されます。
文字エンティティの完全な一覧については、「 W3 XHTML 1.0 - DTDs」を参照してください。 UTF-8 でエンコードされたドキュメントには、Unicode 文字が直接含まれる場合があります。 UE-V ジェネレーターを使用してテンプレートを保存すると、文字エンティティが自動的に Unicode 表現に変換されます。
ID 要素
必須: True
型: 文字列
ID は、特定のテンプレートの一意の識別子を設定します。 このタグは、UE-V エージェントが実行時にテンプレートを参照するために使用するプライマリ識別子になります (たとえば、Get-UevTemplate の出力と PowerShell コマンドレット Get-UevTemplateProgram 参照)。 慣例により、このタグにはスペースを含めず、スクリプトを簡略化します。
<ID>MicrosoftCalculator6</ID>
や<ID>MicrosoftOffice2010Win64</ID>
など、テンプレートを簡単に識別できるように、この要素にアプリケーションのバージョン番号を指定する必要があります。
Version 要素
必須: True
型: 整数
最小値: 0
最大値: 2147483647
バージョンは、変更の管理追跡用の設定場所テンプレートのバージョンを識別します。 UE-V ジェネレーターは、テンプレートが保存されるたびに、この数値を 1 ずつ自動的にインクリメントします。 このフィールドは整数である必要があることに注意してください。小数部の値 ( <Version>2.5</Version>
など) は許可されません。
ヒント
XML コメント タグ <!-- -->
を使用して、バージョンの変更に関するメモを保存できます。たとえば、次に例を示します。
<!--
Version History
Version 1 Jul 05, 2012 Initial template created by Generator - Denise@Contoso.com
Version 2 Jul 31, 2012 Added support for app.exe v2.1.3 - Mark@Contoso.com
Version 3 Jan 01, 2013 Added font settings support - Mark@Contoso.com
Version 4 Jan 31, 2013 Added support for plugin settings - Tony@Contoso.com
-->
<Version>4</Version>
重要
この値を照会して、テンプレートの新しいバージョンをこれらのインスタンスの既存のテンプレートに適用する必要があるかどうかを判断します。
スケジュールされたテンプレートの自動更新タスクが実行されたとき。
Update-UevTemplate PowerShell コマンドレットが実行されたとき。
Update メソッドが WMI を介して呼び出されたとき。
Author 要素
必須: False
型: 文字列
作成者は、設定の場所テンプレートの作成者を識別します。 名前と電子メールの 2 つの省略可能な子要素がサポートされています。 どちらの属性も省略可能ですが、Email 子要素が指定されている場合は、Name 要素を伴う必要があります。 作成者は、設定の場所テンプレートの連絡先の完全な名前を参照し、電子メールは作成者のメール アドレスを参照する必要があります。 この情報は、公開するテンプレートに含めすることをお勧めします。
プロセスとプロセス要素
必須: True
型: 要素
Processes 要素には少なくとも 1 つの <Process>
要素が含まれます。この要素には、 Filename、 Architecture、 ProductName、 FileDescription、 ProductVersion、FileVersion の子要素が含 まれます。 Filename 子要素は必須であり、他の要素は省略可能です。 完全に設定された要素には、次の例のようなタグが含まれています。
<Process>
<Filename>MyApplication.exe</Filename>
<Architecture>Win64</Architecture>
<ProductName> MyApplication </ProductName>
<FileDescription>MyApplication.exe</FileDescription>
<ProductVersion>
<Major Minimum="2" Maximum="2" />
<Minor Minimum="0" Maximum="0" />
<Build Minimum="0" Maximum="0" />
<Patch Minimum="5" Maximum="5" />
</ProductVersion>
<FileVersion>
<Major Minimum="2" Maximum="2" />
<Minor Minimum="0" Maximum="0" />
<Build Minimum="0" Maximum="0" />
<Patch Minimum="5" Maximum="5" />
</FileVersion>
</Process>
ファイル名
必須: True
型: 文字列
Filename は、ファイル システムに表示される実行可能ファイルの実際のファイル名を指します。 この要素は、テンプレートがプロセスに適用されるかどうかを評価するために UE-V が使用する主要な条件を指定します。 この要素は、設定の場所テンプレート XML で指定する必要があります。
有効なファイル名は、次の正規表現と一致できません: [^\\\?\*\|<>/:]+
。 つまり、次の文字を含めることはできません。
- 円記号 (
\
) - アスタリスク (
*
) - 疑問符 (
?
) - パイプ文字 (
|
) - より大きい記号 (
>
) - より小さい記号 (
<
) - スラッシュ (
/
) - コロン (
:
)
ヒント
この正規表現に対して文字列をテストするには、PowerShell コマンド ウィンドウを使用し、実行可能ファイルの名前を YourFileName に置き換えます。
"YourFileName.exe" -match "[\\\?\*\|<>/:]+"
値 True は、文字列に無効な文字が含まれていることを示します。 不正な値の例を次に示します。
\\server\share\program.exe
Program*.exe
Pro?ram.exe
Program<1>.exe
注
UE-V ジェネレーターは、それぞれ >
および <
として、より大きい文字とより小さい文字をエンコードします。
まれな状況では、FileName 値に .exe 拡張子が含まれているとは限りませんが、値の一部として指定する必要があります。 たとえば、<Filename>MyApplictication</Filename>
の代わりに<Filename>MyApplictication.exe</Filename>
を指定する必要があります。 2 番目の例では、実行可能ファイルの実際の名前が MyApplication.exe
されている場合、テンプレートはプロセスに適用されません。
アーキテクチャ
必須: False
型: アーキテクチャ (文字列)
アーキテクチャとは、ターゲット実行可能ファイルがコンパイルされたプロセッサ アーキテクチャを指します。 有効な値は、32 ビット アプリケーションの場合は Win32、64 ビット アプリケーションの場合は Win64 です。 存在する場合、このタグは、設定の場所テンプレートの適用性を特定のアプリケーション アーキテクチャに制限します。 たとえば、UE-V に含まれる %ProgramFiles%\Microsoft User Experience Virtualization\templates\MicrosoftOffice2010Win32.1SP1.xml
ファイルと MicrosoftOffice2010Win64.xml
ファイルを比較します。 これは、実行可能ファイルの異なるバージョン間で相対パスが変更される場合、またはプロセッサ アーキテクチャ間を移動するときに設定が追加または削除される場合に便利です。
この要素がない場合、設定の場所テンプレートはプロセスのアーキテクチャを無視し、ファイル名やその他の属性が適用される場合は、32 ビットプロセスと 64 ビット プロセスの両方に適用されます。
注
UE-V では、このバージョンの ARM プロセッサはサポートされていません。
ProductName
必須: False
型: 文字列
ProductName は、管理目的またはレポートのために製品を識別するために使用される省略可能な要素です。 ProductName は、値に正規表現の制限がない点で Filename とは異なります。 これにより、実行可能ファイル名が明確でないプロセスの説明をより簡単に理解できます。 次に、例を示します。
<Process>
<Filename>MyApplication.exe</Filename>
<ProductName>My Application 6.x by Contoso.com</ProductName>
<ProductVersion>
<Major Minimum="6" Maximum="6" />
</ProductVersion>
</Process>
FileDescription
必須: False
型: 文字列
FileDescription は、実行可能ファイルの管理説明を許可する省略可能なタグです。 これはフリー テキスト フィールドであり、実行可能ファイルの関数を識別する必要があるソフトウェア パッケージ内の複数の実行可能ファイルを区別する場合に役立ちます。
たとえば、適したアプリケーションでは、次に示すように、2 つの実行可能ファイル (MyApplication.exe と MyApplicationHelper.exe) の機能に関するリマインダーを提供すると便利な場合があります。
<Processes>
<Process>
<Filename>MyApplication.exe</Filename>
<FileDescription>My Application Main Engine</ FileDescription>
<ProductVersion>
<Major Minimum="6" Maximum="6" />
</ProductVersion>
</Process>
<Process>
<Filename>MyApplicationHelper.exe</Filename>
<FileDescription>My Application Background Process Executable</FileDescription>
<ProductVersion>
<Major Minimum="6" Maximum="6" />
</ProductVersion>
</Process>
</Processes>
ProductVersion
必須: False
型: 文字列
ProductVersion は、ファイルのメジャーバージョンとマイナー製品バージョン、およびビルドおよびパッチ レベルを指します。 ProductVersion は省略可能な要素ですが、指定した場合は、少なくとも Major 子要素を含む必要があります。 この値は、Minimum="X" Maximum="Y" という形式で範囲を表す必要があります。X と Y は整数です。 最小値と最大値は同じにすることができます。
製品とファイルのバージョンの要素は、指定されていないままにすることができます。 これにより、テンプレートのバージョンは依存しません。つまり、テンプレートは、指定された実行可能ファイルのすべてのバージョンに適用されます。
例 1: 製品バージョン 1.0
製品バージョン: UE-V ジェネレーターで指定された 1.0 では、次の XML が生成されます。
<ProductVersion>
<Major Minimum="1" Maximum="1" />
<Minor Minimum="0" Maximum="0" />
</ProductVersion>
例 2: 製品バージョン 5.0.2.1000
ファイル バージョン: UE-V ジェネレーターで指定された 5.0.2.1000 は、次の XML を生成します。
<FileVersion>
<Major Minimum="5" Maximum="5" />
<Minor Minimum="0" Maximum="0" />
<Build Minimum="2" Maximum="2" />
<Patch Minimum="1000" Maximum="1000" />
</FileVersion>
正しくない例 1 - 不完全な範囲
Minimum 属性のみが存在します。 最大値も範囲に含まれている必要があります。
<ProductVersion>
<Major Minimum="2" />
</ProductVersion>
正しくない例 2 - Major 要素を指定せずに Minor を指定する
Minor 要素のみが存在します。 メジャーも含まれている必要があります。
<ProductVersion>
<Minor Minimum="0" Maximum="0" />
</ProductVersion>
FileVersion
必須: False
型: 文字列
FileVersion は、公開されたアプリケーションのリリース バージョンと、コンポーネント実行可能ファイルの内部ビルドの詳細を区別します。 ほとんどの商用アプリケーションでは、これらの数値は同じです。 異なる場合、ファイルの製品バージョンはファイルの一般的なバージョン識別を示し、ファイルバージョンは(修正プログラムや更新プログラムのように) ファイルの特定のビルドを示します。 これにより、検出ロジックを損なうことなくファイルを一意に識別できます。
特定の実行可能ファイルの製品バージョンとファイル バージョンを確認するには、Windows エクスプローラーでファイルを右クリックし、[プロパティ] を選択し、[詳細] タブを選択します。
アプリケーションに FileVersion 要素を含めることにより、検出ロジックをよりきめ細かく調整できますが、ほとんどのアプリケーションでは必要ありません。 ProductVersion 要素の設定が最初にチェックされ、次に FileVersion がチェックされます。 制限の厳しい設定が適用されます。
FileVersion の子要素と構文規則は、ProductVersion の要素と同じです。
<Process>
<Filename>MSACCESS.EXE</Filename>
<Architecture>Win32</Architecture>
<ProductVersion>
<Major Minimum="14" Maximum="14" />
<Minor Minimum="0" Maximum="0" />
</ProductVersion>
<FileVersion>
<Major Minimum="14" Maximum="14" />
<Minor Minimum="0" Maximum="0" />
</FileVersion>
</Process>
Application 要素
アプリケーションは、特定のアプリケーションに適用される設定のコンテナーです。 これは、次のフィールド/型のコレクションです。
フィールド/型 | 説明 |
---|---|
Name | 設定の場所テンプレートの一意の名前を指定します。 これは、WMI、PowerShell、イベント ビューアー、デバッグ ログでテンプレートを参照するときに表示目的で使用されます。 詳細については、「 名前」を参照してください。 |
ID | 特定のテンプレートの一意の識別子を設定します。 このタグは、UE-V エージェントが実行時にテンプレートを参照するために使用するプライマリ識別子になります。 詳細については、「 ID」を参照してください。 |
説明 | テンプレートの省略可能な説明。 |
LocalizedNames | 言語ロケールによってローカライズされた UI に表示される省略可能な名前。 |
LocalizedDescriptions | 言語ロケールによってローカライズされた省略可能なテンプレートの説明。 |
バージョン | 変更の管理追跡用の設定場所テンプレートのバージョンを識別します。 詳細については、「 バージョン」を参照してください。 |
DeferToMSAccount | このテンプレートが Microsoft アカウントで有効かどうかを制御します。 コンピューター上のユーザーに対して MSA 同期が有効になっている場合、このテンプレートは自動的に無効になります。 |
DeferToOffice365 | MSA と同様に、このテンプレートが Office365 で有効になっているかどうかを制御します。 Office 365 を使用して設定を同期している場合、このテンプレートは自動的に無効になります。 |
FixedProfile | このテンプレートは、この要素内で指定されたプロファイルにのみ関連付けることができ、WMI または PowerShell を使用して変更できないことを指定します。 |
プロセス | 1 つ以上の Process 要素のコレクションのコンテナー。 詳細については、「 プロセス」を参照してください。 |
設定 | 特定のテンプレートに適用されるすべての設定のコンテナー。 レジストリ、ファイル、SystemParameter、CustomAction 設定のインスタンスが含まれています。 詳細については、「データ型の設定」を参照してください。 |
共通要素
Common は Application 要素に似ていますが、常に 2 つ以上の Application 要素に関連付けられています。 [共通] セクションは、これらのアプリケーション インスタンス間で共有される設定のセットを表します。 これは、次のフィールド/型のコレクションです。
フィールド/型 | 説明 |
---|---|
Name | 設定の場所テンプレートの一意の名前を指定します。 これは、WMI、PowerShell、イベント ビューアー、デバッグ ログでテンプレートを参照するときに表示目的で使用されます。 詳細については、「 名前」を参照してください。 |
ID | 特定のテンプレートの一意の識別子を設定します。 このタグは、UE-V エージェントが実行時にテンプレートを参照するために使用するプライマリ識別子になります。 詳細については、「 ID」を参照してください。 |
説明 | テンプレートの省略可能な説明。 |
LocalizedNames | 言語ロケールによってローカライズされた UI に表示される省略可能な名前。 |
LocalizedDescriptions | 言語ロケールによってローカライズされた省略可能なテンプレートの説明。 |
バージョン | 変更の管理追跡用の設定場所テンプレートのバージョンを識別します。 詳細については、「 バージョン」を参照してください。 |
DeferToMSAccount | このテンプレートが Microsoft アカウントで有効かどうかを制御します。 コンピューター上のユーザーに対して MSA 同期が有効になっている場合、このテンプレートは自動的に無効になります。 |
DeferToOffice365 | MSA と同様に、このテンプレートが Office365 で有効になっているかどうかを制御します。 Office 365 を使用して設定を同期している場合、このテンプレートは自動的に無効になります。 |
FixedProfile | このテンプレートは、この要素内で指定されたプロファイルにのみ関連付けることができ、WMI または PowerShell を使用して変更できないことを指定します。 |
設定 | 特定のテンプレートに適用されるすべての設定のコンテナー。 レジストリ、ファイル、SystemParameter、CustomAction 設定のインスタンスが含まれています。 詳細については、「データ型の設定」を参照してください。 |
SettingsLocationTemplate 要素
この要素は、1 つのアプリケーションまたはアプリケーションスイートの設定を定義します。
フィールド/型 | 説明 |
---|---|
Name | 設定の場所テンプレートの一意の名前を指定します。 これは、WMI、PowerShell、イベント ビューアー、デバッグ ログでテンプレートを参照するときに表示目的で使用されます。 詳細については、「 名前」を参照してください。 |
ID | 特定のテンプレートの一意の識別子を設定します。 このタグは、UE-V エージェントが実行時にテンプレートを参照するために使用するプライマリ識別子になります。 詳細については、「 ID」を参照してください。 |
説明 | テンプレートの省略可能な説明。 |
LocalizedNames | 言語ロケールによってローカライズされた UI に表示される省略可能な名前。 |
LocalizedDescriptions | 言語ロケールによってローカライズされた省略可能なテンプレートの説明。 |
付録: SettingsLocationTemplate.xsd
要素、子要素、属性、パラメーターを示す SettingsLocationTemplate.xsd ファイルを次に示します。
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="UevSettingsLocationTemplate"
targetNamespace="https://schemas.microsoft.com/UserExperienceVirtualization/2013A/SettingsLocationTemplate"
elementFormDefault="qualified"
xmlns="https://schemas.microsoft.com/UserExperienceVirtualization/2013A/SettingsLocationTemplate"
xmlns:mstns="https://schemas.microsoft.com/UserExperienceVirtualization/2013A/SettingsLocationTemplate"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="Guid">
<xs:restriction base="xs:string">
<xs:pattern value="\{[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}\}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="FilenameString">
<xs:restriction base="xs:string">
<xs:pattern value="[^\\\?\*\|<>/:]+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="IDString">
<xs:restriction base="xs:string">
<xs:pattern value="[^\\\?\*\|<>/:.]+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CompositeIDString">
<xs:restriction base="xs:string">
<xs:pattern value="[^\\\?\*\|<>/:.]+([.][^\\\?\*\|<>/:.]+)?" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TemplateVersion">
<xs:restriction base="xs:integer">
<xs:minInclusive value="0" />
<xs:maxInclusive value="2147483647" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="Empty">
<xs:sequence/>
</xs:complexType>
<xs:complexType name="LocalizedString">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Locale" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="LocalizedName">
<xs:sequence>
<xs:element name="Name" type="LocalizedString" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="LocalizedDescription">
<xs:sequence>
<xs:element name="Description" type="LocalizedString" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="ReplacedTemplates">
<xs:sequence>
<xs:element name="ID" type="CompositeIDString" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Author">
<xs:all>
<xs:element name="Name" type="xs:string" minOccurs="1" />
<xs:element name="Email" type="xs:string" minOccurs="0" />
</xs:all>
</xs:complexType>
<xs:complexType name="Range">
<xs:attribute name="Minimum" type="xs:integer" use="required"/>
<xs:attribute name="Maximum" type="xs:integer" use="required"/>
</xs:complexType>
<xs:complexType name="ProcessVersion">
<xs:sequence>
<xs:element name="Major" type="Range" minOccurs="1" />
<xs:element name="Minor" type="Range" minOccurs="0" />
<xs:element name="Build" type="Range" minOccurs="0" />
<xs:element name="Patch" type="Range" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="Architecture">
<xs:restriction base="xs:string">
<xs:enumeration value="Win32"/>
<xs:enumeration value="Win64"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="Process">
<xs:sequence>
<xs:element name="Filename" type="FilenameString" minOccurs="1" />
<xs:element name="Architecture" type="Architecture" minOccurs="0" />
<xs:element name="ProductName" type="xs:string" minOccurs="0" />
<xs:element name="FileDescription" type="xs:string" minOccurs="0" />
<xs:element name="ProductVersion" type="ProcessVersion" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="FileVersion" type="ProcessVersion" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Processes">
<xs:sequence>
<xs:choice minOccurs="1">
<xs:element name="Process" type="Process" />
<xs:element name="ShellProcess" type="Empty" />
</xs:choice>
<xs:element name="Process" type="Process" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Path">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Recursive" type="xs:boolean" default="false"/>
<xs:attribute name="DeleteIfNotFound" type="xs:boolean" default="false"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="RegistrySetting">
<xs:sequence>
<xs:element name="Path" type="Path" />
<xs:element name="Name" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="Exclude" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Path" type="Path" minOccurs="0" />
<xs:element name="Name" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="FileSetting">
<xs:sequence>
<xs:element name="Root">
<xs:complexType>
<xs:choice>
<xs:element name="KnownFolder" type="Guid" />
<xs:element name="RegistryEntry" type="xs:string" />
<xs:element name="EnvironmentVariable" type="xs:string" />
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="Path" minOccurs="0" type="Path" />
<xs:element name="FileMask" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Exclude" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Path" type="Path" minOccurs="0" />
<xs:element name="FileMask" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="CustomActionSetting">
<xs:restriction base="xs:anyURI"/>
</xs:simpleType>
<xs:simpleType name="SystemParameterSetting">
<xs:restriction base="xs:string">
<!-- Accessibility parameters -->
<xs:enumeration value="AccessTimeout"/>
<xs:enumeration value="AudioDescription"/>
<xs:enumeration value="ClientAreaAnimation"/>
<xs:enumeration value="DisableOverlappedContent"/>
<xs:enumeration value="FilterKeys"/>
<xs:enumeration value="FocusBorderHeight"/>
<xs:enumeration value="FocusBorderWidth"/>
<xs:enumeration value="HighContrast"/>
<xs:enumeration value="MessageDuration"/>
<xs:enumeration value="MouseClickLock"/>
<xs:enumeration value="MouseClickLockTime"/>
<xs:enumeration value="MouseKeys"/>
<xs:enumeration value="MouseSonar"/>
<xs:enumeration value="MouseVanish"/>
<xs:enumeration value="ScreenReader"/>
<xs:enumeration value="ShowSounds"/>
<xs:enumeration value="SoundSentry"/>
<xs:enumeration value="StickyKeys"/>
<xs:enumeration value="ToggleKeys"/>
<!-- Input parameters -->
<xs:enumeration value="Beep"/>
<xs:enumeration value="BlockSendInputResets"/>
<xs:enumeration value="DefaultInputLang"/>
<xs:enumeration value="DoubleClickTime"/>
<xs:enumeration value="DoubleClkHeight"/>
<xs:enumeration value="DoubleClkWidth"/>
<xs:enumeration value="KeyboardCues"/>
<xs:enumeration value="KeyboardDelay"/>
<xs:enumeration value="KeyboardPref"/>
<xs:enumeration value="KeyboardSpeed"/>
<xs:enumeration value="Mouse"/>
<xs:enumeration value="MouseButtonSwap"/>
<xs:enumeration value="MouseHoverHeight"/>
<xs:enumeration value="MouseHoverTime"/>
<xs:enumeration value="MouseHoverWidth"/>
<xs:enumeration value="MouseSpeed"/>
<xs:enumeration value="MouseTrails"/>
<xs:enumeration value="SnapToDefButton"/>
<xs:enumeration value="WheelScrollChars"/>
<xs:enumeration value="WheelScrollLines"/>
<!-- Desktop parameters (limited subset) -->
<xs:enumeration value="DeskWallpaper"/>
<xs:enumeration value="DesktopColor"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="Settings">
<xs:sequence>
<xs:element name="Asynchronous" type="xs:boolean" minOccurs="0" />
<xs:element name="PreventOverlappingSynchronization" type="xs:boolean" minOccurs="0" />
<xs:element name="AlwaysApplySettings" type="xs:boolean" minOccurs="0" />
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Registry" type="RegistrySetting" />
<xs:element name="File" type="FileSetting" />
<xs:element name="SystemParameter" type="SystemParameterSetting" />
<xs:element name="CustomAction" type="CustomActionSetting" />
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Common">
<xs:sequence>
<xs:element name="Name" type="xs:string" />
<xs:element name="ID" type="IDString" />
<xs:element name="ReplacedTemplates" type="ReplacedTemplates" minOccurs="0" />
<xs:element name="Description" type="xs:string" minOccurs="0" />
<xs:element name="LocalizedNames" type="LocalizedName" minOccurs="0" />
<xs:element name="LocalizedDescriptions" type="LocalizedDescription" minOccurs="0" />
<xs:element name="Version" type="xs:integer" />
<xs:element name="DeferToMSAccount" type="Empty" minOccurs="0" />
<xs:element name="DeferToOffice365" type="Empty" minOccurs="0" />
<xs:element name="Settings" type="Settings" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Application">
<xs:sequence>
<xs:element name="Name" type="xs:string" />
<xs:element name="ID" type="IDString" />
<xs:element name="ReplacedTemplates" type="ReplacedTemplates" minOccurs="0" />
<xs:element name="Description" type="xs:string" minOccurs="0" />
<xs:element name="LocalizedNames" type="LocalizedName" minOccurs="0" />
<xs:element name="LocalizedDescriptions" type="LocalizedDescription" minOccurs="0" />
<xs:element name="Version" type="xs:integer" />
<xs:element name="DeferToMSAccount" type="Empty" minOccurs="0" />
<xs:element name="DeferToOffice365" type="Empty" minOccurs="0" />
<xs:element name="Processes" type="Processes" />
<xs:element name="Settings" type="Settings" />
</xs:sequence>
</xs:complexType>
<xs:element name="SettingsLocationTemplate">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="xs:string" />
<xs:element name="ID" type="IDString" />
<xs:element name="Description" type="xs:string" minOccurs="0" />
<xs:element name="LocalizedNames" type="LocalizedName" minOccurs="0" />
<xs:element name="LocalizedDescriptions" type="LocalizedDescription" minOccurs="0" />
<xs:choice>
<!-- Single application -->
<xs:sequence>
<xs:element name="ReplacedTemplates" type="ReplacedTemplates" minOccurs="0" />
<xs:element name="Version" type="TemplateVersion" />
<xs:element name="Author" type="Author" minOccurs="0" />
<xs:element name="FixedProfile" type="xs:string" minOccurs="0" />
<xs:element name="DeferToMSAccount" type="Empty" minOccurs="0" />
<xs:element name="DeferToOffice365" type="Empty" minOccurs="0" />
<xs:element name="Processes" type="Processes" />
<xs:element name="Settings" type="Settings" />
</xs:sequence>
<!-- Suite of applications -->
<xs:sequence>
<xs:element name="ManageSuiteOnly" type="xs:boolean" minOccurs="0" />
<xs:element name="Author" type="Author" minOccurs="0" />
<xs:element name="FixedProfile" type="xs:string" minOccurs="0" />
<xs:element name="Common" type="Common" />
<xs:element name="Application" type="Application" minOccurs="2" maxOccurs="unbounded" />
</xs:sequence>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- SettingsLocationTemplate -->
</xs:schema>