能力值:
( LV2,RANK:10 )
|
-
-
26 楼
累了就歇歇 `````````````````````````````````````````
|
能力值:
( LV2,RANK:10 )
|
-
-
27 楼
我来了,支持楼主
虽然还是什么都看不懂,但是我在努力学
为了不再疏远大家,我来了
|
能力值:
( LV5,RANK:60 )
|
-
-
28 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
29 楼
mark!
|
能力值:
( LV2,RANK:10 )
|
-
-
30 楼
mark!!!
|
能力值:
( LV2,RANK:10 )
|
-
-
31 楼
学习了学习了...
|
能力值:
( LV2,RANK:10 )
|
-
-
32 楼
非常不错的文章,收藏了~
|
能力值:
( LV2,RANK:10 )
|
-
-
33 楼
原来拜读过楼主的帖子,现在赶紧跟上!!~继续膜拜
|
能力值:
( LV2,RANK:10 )
|
-
-
34 楼
没处理debugport
|
能力值:
( LV2,RANK:10 )
|
-
-
35 楼
小白摘抄:
为什么经常见到include .h文件而不是include .c文件?或者说include是不是就是为包含.h文件设定的语法?这个问题的答案偶不知道,没有见有文档记载、说明这个问题。不过从语法角度讲,include的意思就是从当前位置包含另外一个文件,就象宏替换一样把当前行用另外一个文件的整个内容替换掉。
从这点讲,include .c文件是可行的,c编译器完全能够正常处理。但是为什么不常见include .c文件?从设计角度上讲,源代码区分为.h和.c文件,是为了接口与实现的分离,实际上两者没什么本质的差别。.h文件提供接口,.c文件提供具体的实现,两者可以一一对应,也可以不一一对应,没有强制要求。一个.c文件做为一个模块的实现,有可能要跟其他的模块打交道,这个时候就需要include其他模块的接口(其他模块的.h文件);而包含其他模块的实现(.c文件)是没有意义的、危险的。
对,包含其他模块的.c文件是很危险的,例如会重定义一些结构,变量等等,容易出错。
所以,我们不应该在项目中include .c文件,这样使用者出于直觉很难想到这里会有问题,增加了排错的难度。前几天偶移植一个国际知名大公司的代码就遇到了这个问题,耗费了半天的时间查看了全部的源码和makefile才发现了这个不常见编译现象。当然,那个公司的代码之所以这么做,是他认为这些代码已经很成熟了,不需要修改和反复重新编译。但它的做法确实对我的调试造成了很大的障碍。
|
能力值:
( LV2,RANK:10 )
|
-
-
36 楼
前来膜拜个……
|
能力值:
( LV2,RANK:10 )
|
-
-
37 楼
习惯了楼主的手法
下次来个跳不过的练练手
|
能力值:
( LV2,RANK:10 )
|
-
-
38 楼
markkkkkkkkkkkk
|
能力值:
( LV4,RANK:50 )
|
-
-
39 楼
支持一个先!
|
能力值:
( LV2,RANK:10 )
|
-
-
40 楼
偶也mark一下~
|
能力值:
( LV2,RANK:10 )
|
-
-
41 楼
用process explorer挂起两条系统线程(这两步我都用工具完成的)
请问这个是什么意思啊?
另外附上,我绕过的地方,然后用带了olly Advanced 插件的OD,能附加上了,但是进游戏一分钟左右卡掉。求拯救!!!
处理方式:
A: hs走自己的流程,非hs绕过hs动手脚的地方
B: hs操作的不是自己则返回失败,
C:凡是被hs替换了的call,都不再调用
NtClose(A)
NtDeviceIoControl(A)
NtOpenProcess(A)
NtGetContextThread 第一处(A)
NtGetContextThread 第二处(如果发现是hs调用,清掉Dr0-Dr7)
ntsetcontextthread(A)
PsSuspendThread(A)
KiAttachProcess(A)
NtQueryPerformanceCounter(C)
NtReadVirtualMemory(B)
NtWriteVirtualMemory(B)
另外做了以下防检测:
NtQueryInformationProcess :ProcessDebugPort,ProcessDebugObjectHandle,ProcessDebugFlags,清空返回结果
ThreadHideFromDebugger,直接返回
NtQuerySystemInformation(SystemKernelDebuggerInformation) 清空返回结果
|
能力值:
( LV2,RANK:10 )
|
-
-
42 楼
好文章,谢谢分享了
|
能力值:
( LV3,RANK:30 )
|
-
-
43 楼
不想说什么了..还是研究我的山寨版了...
|
能力值:
( LV2,RANK:10 )
|
-
-
44 楼
看不懂 ,先支持
|
能力值:
( LV2,RANK:10 )
|
-
-
45 楼
KillMonitoring() 这个是不是无效的?
|
能力值:
( LV3,RANK:30 )
|
-
-
46 楼
好东西啊,支持!
|
|
|