RegLocator テーブル
RegLocator テーブルには、レジストリを使用してファイルまたはディレクトリを検索したり、特定のレジストリ エントリ自体を検索したりするために必要な情報が保持されます。 このテーブルには、次の列があります。
コラム | 種類 | 鍵 | 許容 |
---|---|---|---|
署名_ | 識別子の | Y | N |
根 | 整数 の | N | N |
鍵 | RegPath を する | N | N |
名前 | 書式設定された | N | Y |
種類 | 整数 の | N | Y |
列
-
Signature_
-
Signature_ フィールドの値は、Signature テーブルのいずれかの列の外部キーである一意の署名を表します。 この署名が Signature テーブルに存在する場合、検索はファイルを検索します。 このシグネチャが Signature テーブルに存在しない場合、Type 列の値が msidbLocatorTypeRawValue 場合、検索は RegLocator テーブルによって指されているレジストリ キー名を検索します。 それ以外の場合、検索は RegLocator テーブルが指すディレクトリを検索します。
-
ルート
-
レジストリ値の定義済みのルート キー。
定数 16 進 数 小数 ルート キー msidbRegistryRootClassesRoot を する 0x000 0 HKEY_CLASSES_ROOT msidbRegistryRootCurrentUser 0x001 1 HKEY_CURRENT_USER msidbRegistryRootLocalMachine 0x002 2 HKEY_LOCAL_MACHINE msidbRegistryRootUsers の 0x003 3 HKEY_USERS -
キー
-
レジストリ値のキー。
-
名
-
レジストリ値の名前。 この値が null の場合、キーの名前のない値または既定値 (存在する場合) から値が取得されます。
-
の種類
-
レジストリ値がファイル名、ディレクトリの場所、または生のレジストリ値であるかどうかを決定する値。
次の表に、有効な値を示します。 最初の 3 つの値のいずれかを設定し、必要に応じて msidbLocatorType64bit します。 このフィールドのエントリがない場合、Type は 1 に設定されます。
定数 16 進 数 小数 形容 msidbLocatorTypeDirectory 0x000 0 キー パスはディレクトリです。 msidbLocatorTypeFileName 0x001 1 キー パスはファイル名です。 msidbLocatorTypeRawValue の 0x002 2 キー パスはレジストリ値です。 msidbLocatorType64bit 0x010 16 インストーラーがレジストリの 64 ビット部分を検索するように、このビットを設定します。 インストーラーがレジストリの 32 ビット部分を検索するようにこのビットを設定しないでください。
備考
[種類] フィールドの値が msidbLocatorTypeRawValue 場合、インストーラーは、AppSearch テーブルの [プロパティ] フィールドで指定されたプロパティの値をレジストリ値に設定することに注意してください。 インストーラーは、レジストリ値の種類を識別するプレフィックスをレジストリ値に追加します。 レジストリ値の種類の詳細については、「レジストリ値の型 を参照してください。
レジストリの種類 | インストーラーによって追加されたプレフィックス |
---|---|
REG_SZ | なし。ただし、レジストリ値の最初の文字が #の場合、インストーラーは別の #の前に文字をエスケープします。 |
DWORD | 必要に応じて 、"#" の後に '+' または '-' が続きます |
REG_EXPAND_SZ | "#%" |
REG_MULTI_SZ | ヌル。 インストーラーは、プロパティを null で始まり、null で終わる値に設定します。 |
REG_BINARY | "#x" REG_BINARYの場合、インストーラーは各 16 進数字 (ニブル) を ASCII 文字の先頭に "#x" で変換して保存します。 |
通常、このテーブルの列はローカライズされません。 作成者が複数の言語で製品を検索する場合は、各言語のテーブルに個別のエントリが含まれている必要があります。
RegLocator テーブルを使用してキーの有無のみを確認することはできません。 ただし、キーの既定値を検索し、空でない場合はその値を取得できます。
詳細については、「既存のアプリケーション、ファイル、レジストリ エントリ、または .ini ファイル エントリの検索 を参照してください。
検証