天天看點

windows驅動開發——基礎知識

1、應用程式工作在R3層,驅動工作在R0層。

2、32位系統,R3層2G,R0層2G。

3、驅動區分大小寫。

4、傳回碼:NTSTATUS

5、KdPrint

KdPrint使用方法類似printf,注意KdPrint((" ",  ));使用的是雙括号。

用KdPrint(())來代替printf 輸出資訊。這些資訊可以在DbgView 中看到。KdPrint(())自身是一個宏,

為了完整傳入參數是以使用了兩重括弧。這個比DbgPrint 調用要稍好。因為在free 版不被編譯。

DebugPrint格式說明符

[cpp]  view plain copy

  1.          格式說明符                類型  
  2. %c ANSI字元                 char  
  3. %C 寬字元                   wchar_t  
  4. %d,%i 十進制有符号整數       int  
  5. %D 十進制__int64            __int64  
  6. %I IRP主功能代碼和次功能代碼 PIRP  
  7. %l 十六進制的__int64        __int64  
  8. %L 十六進制的LARGE_INTEGER   LARGE_INTEGER  
  9. %s NULL終止的ANSI字元串      char *  
  10. %S NULL終止的寬字元串       wchar_t *  
  11. %T  UNICODE_STRING         PUNICODE_STRING  
  12. %u 十進制的ULONG            ULONG  
  13. %x 十六進制的ULONG          ULONG  

繼續閱讀