MySQL UDF的除錯方式 - debugview (轉)
My UDF的方式
的UDF實質就是一個不需要設定入口點的動態連線庫(*Nix稱之為共享庫)。對於DLL的除錯可謂個人有個法。現在我介紹一下一個非常簡單的易用的除錯方法。這一方法直接利用 ,語言無關、開發工具無關、專案型別無關,典型的三無除錯方法。並且,我們從這裡討論的除錯方法支援除錯,對於一時無法掌握開發工具原本偵錯程式而又急於尋找錯誤的朋友此方法非常實用!
首先我們需要接收端,當然有心人也可以自己寫一個。在 view.shtml"> 。透過debugview手冊我們可以知道這個工具支援/nt系列,並且支援核心除錯!由於其的API均只能接收一個char * 型別引數,所以有些時候我們需要利用其他的有機組合產生人性可讀提示。
為了減少複雜程度簡單的以來自 .ktop.com.tw/topic.?TOPIC_ID=35166"> 討論為例,講解我是如何利用這裡工具進行除錯的。
1 簡單輸出一行資訊,在除錯開始時輸出一條簡單的資訊便於我們瞭解debug到什麼地方了。
在程式程式碼中根據需要加入下邊一行
OutputDebugStringA("--UDF:my_name()被呼叫");
這樣一來我就知道我定義的my_name被客戶用到了,接著我要關心返回值如何。
2 輸出返回值
輸出返回值方法很多,可以自由組合。自由組合的最終目的是將一個有效的 char * 型別引數傳遞給WiNDOWS API。這裡簡單的以C語言字元控制函式為例。
例子:
#include
#include
/* ...........省略 */
char* __stdcall my_name(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error)
{
OutputDebugStringA("--UDF:my_name()被呼叫"); /* 呼叫了?*/
char *me = "my name";
/*---- debuger start----*/
char debugermsg[256]={0};
sprintf(debugermsg, "%s", me);
OutputDebugStringA(debugermsg);
/*---- debuger end----*/
return me;
}
當在程式中加入了類似程式碼那麼除錯就可以開始了,利用這種方式即便不使用"debuger"方式編譯仍然可以得到所需的除錯資訊。
接收除錯資訊
接收除錯資訊只要開啟debugview程式即可,程式主視窗可以實時返回所需要的除錯資訊。
其它平臺請自行查閱手冊獲得對應的api,利用這種方式除錯方法適當並不會造成任何困擾。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-981895/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- DebugView 除錯入門View除錯
- VS2012編譯除錯WDM驅動(KdPrint無除錯資訊 debugview win7無除錯資訊)編譯除錯ViewWin7
- mysql UDF提權MySql
- MySQL UDF 提權初探MySql
- 【前端除錯】- 斷點除錯的正確開啟方式前端除錯斷點
- DLL的除錯 (轉)除錯
- GDB除錯MySQL除錯MySql
- MySQL UDF 在 in ( subquery where ) bugMySql
- Linux 提權-MySQL UDFLinuxMySql
- node 除錯三種方式除錯
- ABAP工作流(workflow)的除錯方式除錯
- javascript除錯效能的兩種簡單方式JavaScript除錯
- 用醫生的思考方式除錯你的程式碼除錯
- Node.js 啟動除錯方式Node.js除錯
- Java除錯教程--多執行緒除錯(轉)Java除錯執行緒
- 軟體除錯 (轉)除錯
- mysql啟動的四種方式 (轉)MySql
- 使用gdb編譯除錯mysql編譯除錯MySql
- 開始學習除錯MySQL除錯MySql
- perl除錯哲學(轉)除錯
- dbx除錯過程 (轉)除錯
- vc除錯經驗 (轉)除錯
- Bochs 除錯技術(轉)除錯
- Redhat8下XMMS的除錯(轉)Redhat除錯
- Linux利用UDF庫實現Mysql提權LinuxMySql
- 核心除錯神器SystemTap 轉摘除錯
- [轉載]uiautomator埠除錯UI除錯
- NO MFC - 使用 .log 除錯程式 (轉)除錯
- 本地除錯PERL CGI程式(轉)除錯
- 用GDB除錯程式(二) (轉)除錯
- 用GDB除錯程式(四) (轉)除錯
- 用GDB除錯程式(三) (轉)除錯
- MySQL掃盲 -- 授權方式 (轉)MySql
- 除錯工具TRW2000,VB符號除錯初步(轉)除錯符號
- MySQL儲存過程除錯工具-dbForge Studio for MySQLMySql儲存過程除錯
- 除錯篇——除錯物件與除錯事件除錯物件事件
- 直播平臺原始碼,JavaScript 的四種除錯輸出方式原始碼JavaScript除錯
- 除錯旋轉編碼器成功除錯