NKDbgPrintfW,在应用程序里可以关闭所有的这个调试信息吗?

傻傻天子   2010-1-13 11:31 楼主
没有NK源码。无法改NK。
NKDbgPrintfW,在应用程序里可以关闭所有的这个调试信息吗?驱动里的。

回复评论 (13)

这个是DEBUG版本的输出吧,如果是release的应该是没有的,楼主搞不到RELEASE版的吗?
点赞  2010-1-13 11:59
如果源码彻底都没有,在应用软件应该是关闭了DEBUG,因为你连对应的API都没有,LIB人家都没提供给你,你的应用应该是无能为力的。
点赞  2010-1-13 12:36
引用: 引用 1 楼 veabol 的回复:
这个是DEBUG版本的输出吧,如果是release的应该是没有的,楼主搞不到RELEASE版的吗?

NKDbgPrintfW这个函数不管什么版本,都会输出信息。
点赞  2010-1-13 14:36
引用: 引用 2 楼 kyzf 的回复:
如果源码彻底都没有,在应用软件应该是关闭了DEBUG,因为你连对应的API都没有,LIB人家都没提供给你,你的应用应该是无能为力的。

不清楚在说什么
点赞  2010-1-13 14:37
曾经尝试而且可行的方法有一种:
通过*.map文件找到NKDbgPrintfW在内存中的位置,修改这里的跳转指令到一个不执行任何操作的地方,后续就可以完全屏蔽它的输出
你可以到网上查一下之前有人描述swdbg的东西,就明白具体的操作方法了

不知道有没有更好的方法,觉得lz可以一试
点赞  2010-1-13 15:20
NKDbgPrintfW
这个函数是nk里的

我没NK的源码,只有NK.bin

我没有*.map这个文件。

用什么办法可以找到这个函数的内存位置
点赞  2010-1-14 08:34
那你如何确定是由NKDbgPrintfW输出的呢?(题外话)
点赞  2010-1-14 08:47
引用: 引用 6 楼 wohuazhen 的回复:
NKDbgPrintfW
这个函数是nk里的

我没NK的源码,只有NK.bin

我没有*.map这个文件。

用什么办法可以找到这个函数的内存位置

基本上不可能,可以要一个nk.map,或者有些厂家做os的时候,已经把Nk。map build到image中了
点赞  2010-1-14 09:17
引用: 引用 7 楼 veabol 的回复:
那你如何确定是由NKDbgPrintfW输出的呢?(题外话)



我用串口调试工具看到输出的调试信息。

Prints a string to the debug output stream. This function is called by the DEBUGMSG, RETAILMSG, and ERRORMSG macros when the macro requires output support.
所有不论你用什么函数,都是调用了NKDbgPrintfW

点赞  2010-1-15 08:59
引用: 引用 8 楼 guopeixin 的回复:
或者有些厂家做os的时候,已经把Nk。map build到image中了

如果放进nk了,会放在什么位置上呢?
点赞  2010-1-15 09:01
没有源码不行,我们没有这个破解能力的。呵呵。
点赞  2010-1-15 09:07
需要驱动源码,才能做
点赞  2010-1-15 09:53
引用: 引用 10 楼 wohuazhen 的回复:
引用 8 楼 guopeixin 的回复:
或者有些厂家做os的时候,已经把Nk。map build到image中了

如果放进nk了,会放在什么位置上呢?

放到nk中的话,就是module或者file了,可以在windows下找到
点赞  2010-1-15 12:42
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复