ボーリングノート

DbgPrintと突然は漠然と私の弟は、唐鵬が今日Kd_Default_Mask 8を出力することができるにドライブ1の書き込みをエドと述べ日を覚えて、windbgの中で何も出力を見つかりませんでした。ただ、このコマンドの前に離れて取得することを覚えておくが、今日は突然、あなたが書いた理由を知りたいです。適切な情報を見つけるために、winddbgヘルプドキュメントに滑らか。

                    

  第二のパラメータはレベルであり、我々は元のパラメータをDbgPrintExまたは初めて選択出力のComponentID対応KdPrintExあります。我々はwindbgの変更ができるKd_(COMPONENTID)_MASKの対応するメッセージが出力されているかどうかを決定する(この値は重要ビットフィールドwidnbg呼ばれる)の値。

 

  レベルは、文書のWinDbgで定義されたいくつかの値が書い以上である:0 <=レベル<= 31、レベルが考えられるシフトビット、すなわち重要度=フィールド<< 1「ビット。とき32 <=レベル<0xFFFFFFFFの=、重要度=フィールド「ビット私たちは、変換を設定すると、レベルKdPrintEx DbgPrintExまたは対応する重要性のビットフィールドには、当社のWinDbgで提供され_MASK Kd_(COMPONENTID)値と計算後の0でない場合、メッセージが出力されます。

  

  

  在windbg文档中发现在windows vista之后DbgPrint和KdPrint的Componetid为DEFAULT,Level被设置为DPFLTR_INFO_LEVEL(即importance bit field = 3<<1 = 0x8),但我们在windbg查看Kd_Default_Mask时发现为0x1,这就是为什么我们DbgPrint消息被过滤的原因。因此我们只要将Kd_Default_Mask and 0x8 = 0x1即可输出(因此0x8,0xA,0x18,0xfffffff等等都可以输出)。

  --------------更多详细的资料请阅读windbg文档“Reading and Filtering Debugging Messages”

 

おすすめ

転載: www.cnblogs.com/DreamoneOnly/p/11392041.html