私はライブユーザモードのデバッグセッションで、win32k!_W32Process
構造を表示したかったのです。残念ながら、win32kはカーネルモードのSYSファイルなので、ユーザーモードセッションではシンボルは使用できません。システムを切り替えることができません
DLL、EXE、またはSYSをダンプファイルとしてロードしてから、シンボルを検査することができます。通常は、ファイル/オープンクラッシュダンプを使用して行います。
この時、私はそれは、同時に複数のシステムをデバッグすることが可能ですデバッグワークショップの参加者を見せたかったので、私はWinDbgの者のコマンドプロンプト経由でWIN32K.SYSを開く:我々として
0:003> |
. 0 id: 10fc attach name: [...]\NetHeaps.exe
0:003> .opendump C:\Windows\winsxs\[...]\win32k.sys
Loading Dump File [C:\Windows\winsxs\[...]\win32k.sys]
Opened 'C:\Windows\winsxs\[...]\win32k.sys'
||0:0:003>
今、私たちは2つのシステムを持っていると私は、ライブデバッグシステム上で、現在よ、見ることができます:
||0:0:003> ||
. 0 Live user mode: <Local>
1 Image file: C:\Windows\winsxs\[...]\win32k.sys
私は今、他のシステムに切り替えることができると思ったが、それは動作しません:
||0:0:003> ||1s
^Illegal debuggee error in '||1s'
私はあまり心配していないだろうが、それはこの場合にはwin32k
のシンボルを見つけることができません。
||0:0:003> .reload
Reloading current modules
...........................
||0:0:003> dt win32k!_W32Process
Symbol win32k!_W32Process not found.
うわー、それはひどいです。 – conio