mysql的udf实质就是一个不需要设置入口点的动态连接库(*nix称之为共享库).对于dll的调试可谓个人有个法.现在我介绍一下一个非常简单的易用的调试方法.这一方法直接利用windows api,语言无关.开发工具无关.项目类型无关,典型的三无调试方法.并且,我们从这里讨论的调试方法支持远程调试,对于一时无法掌握开发工具原本调试器而又急于寻找程序错误的朋友此方法非常实用!
为了减少复杂程度简单的以来自 http://delphi.ktop.com.tw/topic.asp?topic_id=35166 讨论为例,讲解我是如何利用这里工具进行调试的. 【程序编程相关:预防浏览器劫持--HijackThis的】
首先我们需要下载接收端,当然有心人也可以自己写一个.在 http://www.sysinternals.com/ntw2k/freeware/debugview.shtml .透过debugview手册我们可以知道这个工具支持win9x/nt系列,并且支持内核调试!由于其调用的api均只能接收一个char * 类型参数,所以有些时候我们需要利用其他的函数有机组合产生人性可读提示. 【推荐阅读:强大的个人电脑安全之盾】
在程序代码中根据需要加入下边一行: 【扩展信息:防火墙市场破局 ,NP颠覆工控机时代】
1 简单输出一行信息,在调试开始时输出一条简单的信息便于我们了解debug到什么地方了.
outputdebugstringa("--udf:my_name()被调用"); 这样一来我就知道我定义的my_name被客户用到了,接着我要关心返回值如何.2 输出返回值
输出返回值方法很多,可以自由组合.自由组合的最终目的是将一个有效的 char * 类型参数传递给windows api.这里简单的以c语言字符控制函数为例.
... 下一页