使用者工具

網站工具


visual_c_plusplus

差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

Both sides previous revision 前次修改
下次修改
前次修改
visual_c_plusplus [2024/04/15 08:19]
don
visual_c_plusplus [2024/04/15 08:21] (目前版本)
don
行 1: 行 1:
 ====== Visual C++ 研究 ====== ====== Visual C++ 研究 ======
  
-驅動程式中使用 +驅動程式中使用\\ 
-KdPrint 而盡量不要使用 DbgPrint +KdPrint 而盡量不要使用 DbgPrint\\ 
-KdPrint 會根據編譯版本看是否呼叫 DbgPrint或者不輸出 +KdPrint 會根據編譯版本看是否呼叫 DbgPrint或者不輸出\\ 
-Checked --> KdPrint --> DbgPrint +Checked --> KdPrint --> DbgPrint\\ 
-Free --> KdPrint -->  XXX+Free --> KdPrint -->  XXX\\
  
-DbgView 免費提供 可在微軟的網站中找到 +DbgView 免費提供 可在微軟的網站中找到\\ 
-DbgView 可以同時監聽內核和 Win32 上層應用程式發送的除錯訊息。+DbgView 可以同時監聽內核和 Win32 上層應用程式發送的除錯訊息。\\
  
 ^符号 ^格式说明符 ^类型 ^ ^符号 ^格式说明符 ^类型 ^
行 25: 行 25:
 |%p |指针Pointer 32/64位 | | |%p |指针Pointer 32/64位 | |
  
 +根据DDK上说明,Unicode格式(%C, %S, %lc, %ls, %wc, %ws, and %wZ)只能在 IRQL = PASSIVE_LEVEL時才能使用。\\
 +需要注意 中文的 WCHAR 和 UNICODE_STRING可能会被截断打印不出来 \\
 +需要转化为 CHAR 和 ANSI_STRING 来打印 \\
 +ANSI_STRING ansiString;  //省去对ansiString初始化  \\
 +KdPrint(("%Z\n", &ansiString));    //注意是%Z  \\
 +  
 +UNICODE_STRING;  //省去对uniString初始化  \\
 +KdPrint(("%wZ\n", &uniString));    //注意是%wZ  \\
  
visual_c_plusplus.1713140355.txt.gz · 上一次變更: 2024/04/15 08:19 由 don