备注:写成子程序是为了方便在应用时插到代码段中,真正使用时请务必插入(最好分段插入)到程序代码中,否则几乎形同虚设。
.版本 2
.子程序 第一法_内存分配反调试, 逻辑型
.参数 最小值, 整数型
.参数 最大值, 整数型
.局部变量 min, 整数型
.局部变量 max, 整数型
GetProcessWorkingSetSize (GetCurrentProcess (), min, max)
' 输出调试文本 (min, max)
返回 (min ≠ 最小值 或 max ≠ 最大值)
.子程序 第二法_子窗口反调试
EnumChildWindows (GetDesktopWindow (), 到整数 (&子窗口监控子程序), 0)
.子程序 第三法_时间差反调试, 逻辑型
.局部变量 ctt, FILETIME
.局部变量 ett, FILETIME
.局部变量 ktt, FILETIME
.局部变量 utt, FILETIME
.局部变量 stt, SystemTime
.局部变量 ntt, SystemTime
.局部变量 qtt, 双精度小数型
GetLocalTime (ntt)
GetProcessTimes (GetCurrentProcess (), ctt, ett, ktt, utt)
FileTimeToSystemTime (ctt, stt)
qtt = 到数值 (ntt.wSecond) × 1000 + ntt.wMilliseconds - 到数值 (stt.wSecond) × 1000 - stt.wMilliseconds
返回 (qtt > 300