!reg
The !reg extension displays and searches through registry data.
!reg {querykey|q} FullKeyPath
!reg keyinfo HiveAddress KeyNodeAddress
!reg kcb Address
!reg knode Address
!reg kbody Address
!reg kvalue Address
!reg valuelist HiveAddress KeyNodeAddress
!reg subkeylist HiveAddress KeyNodeAddress
!reg baseblock HiveAddress
!reg seccache HiveAddress
!reg hashindex [HiveAddress]HashKey
!reg openkeys {HiveAddress|0}
!reg openhandles {HiveAddress|0}
!reg findkcb FullKeyPath
!reg hivelist
!reg viewlist HiveAddress
!reg freebins HiveAddress
!reg freecells BinAddress
!reg dirtyvector HiveAddress
!reg cellindex HiveAddress Index
!reg freehints HiveAddress Storage Display
!reg translist {RmAddress|0}
!reg uowlist TransactionAddress
!reg locktable KcbAddress ThreadAddress
!reg convkey KeyPath
!reg postblocklist
!reg notifylist
!reg ixlock LockAddress
!reg dumppool [s|r]
パラメーター
{querykey|q} **** FullKeyPath
キーがキャッシュされている場合は、キーのサブキーと値を表示する。 FullKeyPath は完全なキーパスを指定する。
keyinfoHiveAddress **** KeyNodeAddress
キー・ノードのサブキーと値を表示します。 HiveAddress はハイブのアドレスを指定します。 KeyNodeAddress はキー・ノードのアドレスを指定する。
kcb **** Address
レジストリキーのコントロールブロックを表示します。 Address はキー・コントロール・ブロックのアドレスを指定する。
knode **** Address
レジストリキーのノード構造を表示します。 住所 はキー・ノードのアドレスを指定する。
kbody **** Address
レジストリキーのボディ構造を表示する。 住所 はキー本体のアドレスを指定する。 (レジストリ・キー本体は、ハンドルに関連付けられた実際のオブジェクトである)。
kvalue **** Address
レジストリキーの値構造を表示します。 住所 は値のアドレスを指定する。
valuelist **** HiveAddress **** KeyNodeAddress
指定されたキー・ノード内の値のリストを表示する。 HiveAddress はハイブのアドレスを指定します。 KeyNodeAddress はキー・ノードのアドレスを指定する。
subkeylist **** HiveAddress **** KeyNodeAddress
指定されたキー・ノードのサブキーのリストを表示する。 HiveAddress はハイブのアドレスを指定します。 KeyNodeAddress はキー・ノードのアドレスを指定する。
baseblock **** HiveAddress
ハイブのベース ブロックを表示します ( ハイブヘッダー). HiveAddress はハイブのアドレスを指定します。
seccache **** HiveAddress
ハイブのセキュリティ キャッシュを表示します。 HiveAddress はハイブのアドレスを指定します。
hashindex **** [HiveAddress] **** HashKey
ハッシュキーのハッシュインデックスエントリを計算する。 HiveAddress はハイブのアドレスを指定します。 HashKey はキーを指定する。
NoteHiveAddress は、ターゲットコンピュータがWindows 7以降を実行している場合に必要です。
openkeys {HiveAddress|0}
ハイブ内の開いているキーをすべて表示します。 HiveAddress はハイブのアドレスを指定します。 このテーブルには、レジストリの開いているキーがすべて含まれている。
findkcb **** FullKeyPath
レジストリパスに対応するレジストリキーコントロールブロックを表示します。 FullKeyPath このパスはハッシュテーブル内に存在しなければならない。
hivelist
システム内のすべてのハイブのリストと、各ハイブの詳細情報が表示されます。
viewlist **** HiveAddress
ハイブのすべてのピン留めされたビューとマップされたビューを、各ビューの詳細情報とともに表示します。 HiveAddress はハイブのアドレスを指定します。
freebins **** HiveAddress
ハイブの空きビンをすべて表示し、各ビンの詳細情報を表示します。 HiveAddress はハイブのアドレスを指定します。
freecells **** BinAddress
ビンを反復処理し、その中のすべてのフリーセルを表示する。 BinAddress はビンのアドレスを指定する。
dirtyvector **** HiveAddress
ハイブのダーティ ベクトルを表示します。 HiveAddress はハイブのアドレスを指定します。
cellindex **** HiveAddress **** Index
ハイブ内のセルの仮想アドレスを表示します。 HiveAddress はハイブのアドレスを指定します。 Index はセルのインデックスを指定する。
freehintsHiveAddress **** Storage **** Display
フリーヒント情報を表示します。
translist {RmAddress|0}
RM 内のアクティブなトランザクションのリストを表示する。 RmAddress はRMのアドレスを指定する。
uowlistTransactionAddress
トランザクションに添付されている UoW のリストを表示します。 TransactionAddress はトランザクションのアドレスを指定する。
locktableKcbAddressThreadAddress
関連するロックテーブルの内容を表示します。
convkeyKeyPath
キー・パスのハッシュ・キーを表示する。
postblocklist
ポストブロックが投稿されたスレッドのリストを表示する。
notifylist
システム内の通知ブロックのリストを表示します。
ixlockLockAddress
インテント・ロックの所有権を表示する。 LockAddress はロックのアドレスを指定する。
dumppool [s|r]
レジストリに割り当てられたページドプールを表示する。 もし s が指定されると、レジストリページのリストは一時ファイルに保存される。 If r を指定すると、レジストリのページリストは、以前に保存した一時ファイルから復元される。
DLL
Kdexts.dll
追加情報
レジストリとその構成要素については、以下を参照のこと Microsoft Windows Internals マーク・ラシノビッチとデイヴィッド・ソロモン著。
解説
次に例を示します。 初使用 !reg hivelist をクリックして、ハイブのアドレスのリストを取得します。
00: kd> !reg hivelist
##
## | HiveAddr |Stable Length| Stable Map |Volatile Length| Volatile Map |MappedViews|PinnedViews|U(Cnt)| BaseBlock | FileName
| fffff8a000014010 | 1000 | fffff8a0000140b0 | 1000 | fffff8a000014328 | 0| fffff8a00001e000 | <NONAME>
| fffff8a000028010 | a15000 | fffff8a00002e000 | 1a000 | fffff8a000028328 | 0| fffff8a000029000 | SYSTEM
| fffff8a00004f010 | 14000 | fffff8a00004f0b0 | c000 | fffff8a00004f328 | 0| fffff8a000050000 | <NONAME>
| fffff8a000329010 | 6000 | fffff8a0003290b0 | 0 | 0000000000000000 | 0| fffff8a00032f000 | Device\HarddiskVolume1\Boot\BCD
| fffff8a0002f2010 | 4255000 | fffff8a0006fa000 | 6000 | fffff8a0002f2328 | 0| fffff8a00036c000 | emRoot\System32\Config\SOFTWARE
| fffff8a000df0010 | f7000 | fffff8a000df00b0 | 1000 | fffff8a000df0328 | 0| fffff8a000df1000 | temRoot\System32\Config\DEFAULT
| fffff8a0010f8010 | 9000 | fffff8a0010f80b0 | 1000 | fffff8a0010f8328 | 0| fffff8a0010f9000 | emRoot\System32\Config\SECURITY
| fffff8a001158010 | 7000 | fffff8a0011580b0 | 0 | 0000000000000000 | 0| fffff8a001159000 | \SystemRoot\System32\Config\SAM
| fffff8a00124b010 | 24000 | fffff8a00124b0b0 | 0 | 0000000000000000 | 0| fffff8a00124c000 | files\NetworkService\NTUSER.DAT
| fffff8a0012df220 | b7000 | fffff8a0012df2c0 | 0 | 0000000000000000 | 0| fffff8a0012e6000 | \SystemRoot\System32\Config\BBI
| fffff8a001312220 | 26000 | fffff8a0013122c0 | 0 | 0000000000000000 | 0| fffff8a00117e000 | rofiles\LocalService\NTUSER.DAT
| fffff8a001928010 | 64000 | fffff8a0019280b0 | 3000 | fffff8a001928328 | 0| fffff8a00192b000 | User.MYTESTCOMPUTER2\ntuser.dat
| fffff8a001b9b010 | 203000 | fffff8a001bc4000 | 0 | 0000000000000000 | 0| fffff8a001b9c000 | \Microsoft\Windows\UsrClass.dat
| fffff8a001dc0010 | 30000 | fffff8a001dc00b0 | 0 | 0000000000000000 | 0| fffff8a001dc2000 | Volume Information\Syscache.hve
## | fffff8a0022dc010 | 175000 | fffff8a0022dc0b0 | 0 | 0000000000000000 | 0| fffff8a0022dd000 | \AppCompat\Programs\Amcache.hve
先の出力の3番目のハイブ・アドレス(ffff8a00004f010)を、次の引数として使用する !reg openkeys.
0: kd> !reg openkeys fffff8a00004f010
# Hive: \REGISTRY\MACHINE\HARDWARE
Index e9: 3069276d kcb=fffff8a00007eb98 cell=00000220 f=00200000 \REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM
Index 101: 292eea1f kcb=fffff8a00007ecc0 cell=000003b8 f=00200000 \REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM\MULTIFUNCTIONADAPTER
Index 140: d927b0d4 kcb=fffff8a00007ea70 cell=000001a8 f=00200000 \REGISTRY\MACHINE\HARDWARE\DESCRIPTION
Index 160: 96d26a30 kcb=fffff8a00007e6f8 cell=00000020 f=002c0000 \REGISTRY\MACHINE\HARDWARE
# 0x4 keys found
の引数として、前の出力( \REGISTRYMACHINE\HARDWARE\DESCRIPTION\SYSTEM)の最初のフルキーパスを使用する !reg querykey.
0: kd> !reg querykey \REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM
Found KCB = fffff8a00007eb98 :: \REGISTRY\MACHINE\HARDWARE\DESCRIPTION\SYSTEM
Hive fffff8a00004f010
KeyNode fffff8a000054224
[SubKeyAddr] [SubKeyName]
fffff8a000060244 CentralProcessor
fffff8a00006042c FloatingPointProcessor
fffff8a0000543bc MultifunctionAdapter
[SubKeyAddr] [VolatileSubKeyName]
fffff8a000338d8c BIOS
fffff8a0002a2e4c VideoAdapterBusses
Use '!reg keyinfo fffff8a00004f010 <SubKeyAddr>' to dump the subkey details
[ValueType] [ValueName] [ValueData]
REG_BINARY Component Information 0x542AC - 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
REG_SZ Identifier AT/AT COMPATIBLE
REG_FULL_RESOURCE_DESCRIPTORConfiguration Data ff ff ff ff ff ff ff ff 00 00 00 00 02 00 00 00 05 00 00 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 00 ff 03 00 00 3f 00 fe 00 02 00 81 00 fe 03 00 00 3f 00 fe 00 02 00 05 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0c 00 00 00 04 00
REG_SZ SystemBiosDate 07/18/07
REG_MULTI_SZ SystemBiosVersion HPQOEM - 20070718\0\0
REG_SZ VideoBiosDate 03/23/20
REG_MULTI_SZ VideoBiosVersion Hardware Version 0.0\0\0
次に別の例を示します。
kd> !reg hivelist
##
## | HiveAddr |Stable Length|Stable Map|Volatile Length|Volatile Map|MappedViews|PinnedViews|U(Cnt)| BaseBlock | FileName
| e16e7428 | 2000 | e16e7484 | 0 | 00000000 | 1 | 0 | 0| e101f000 | \Microsoft\Windows\UsrClass.dat
| e1705a78 | 77000 | e1705ad4 | 1000 | e1705bb0 | 30 | 0 | 0| e101c000 | ttings\Administrator\ntuser.dat
| e13d4b88 | 814000 | e146a000 | 1000 | e13d4cc0 | 255 | 0 | 0| e1460000 | emRoot\System32\Config\SOFTWARE
| e13ad008 | 23000 | e13ad064 | 1000 | e13ad140 | 9 | 0 | 0| e145e000 | temRoot\System32\Config\DEFAULT
| e13b3b88 | a000 | e13b3be4 | 1000 | e13b3cc0 | 3 | 0 | 0| e145d000 | emRoot\System32\Config\SECURITY
| e142d008 | 5000 | e142d064 | 0 | 00000000 | 2 | 0 | 0| e145f000 | <UNKNOWN>
| e11e3628 | 4000 | e11e3684 | 3000 | e11e3760 | 0 | 0 | 0| e11e4000 | <NONAME>
| e10168a8 | 1c1000 | e1016904 | 15000 | e10169e0 | 66 | 0 | 0| e1017000 | SYSTEM
## | e10072c8 | 1000 | e1007324 | 0 | 00000000 | 0 | 0 | 0| e1010000 | <NONAME>
kd> !reg hashindex e16e7428
CmpCacheTable = e100a000
Hash Index[e16e7428] : 5ac
Hash Entry[e16e7428] : e100b6b0
kd> !reg openkeys e16e7428
Index 68: 7bab7683 kcb=e13314f8 cell=00000740 f=00200004 \REGISTRY\USER\S-1-5-21-1715567821-413027322-527237240-500_Classes\CLSID
Index 7a1: 48a30288 kcb=e13a3738 cell=00000020 f=002c0004 \REGISTRY\USER\S-1-5-21-1715567821-413027322-527237240-500_Classes
フォーマットされたレジストリキー情報を表示するには !dreg 代わりにエクステンションを使用する。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示