• 当前位置: 首页 > 等阶教程源码 > 高级教程源码易语言检测调试器源码,易语言程序调试反调试源码
  • 易语言检测调试器源码,易语言程序调试反调试源码

    • 软件授权:
      开源软件
    • 软件大小:
      9.3 KB
    • 文件类型:
      .zip,.e
    • 下载次数:
    • 上传用户:
      心脏
    • 发布时间:
      2018-10-20 22:06
    • 软件等阶:
    • 运行环境:
      Winall,Win2003,WinXP,Win7,Win8
    • 软件评级:

    软件介绍             



     

    易语言程序调试反调试源码


    系统结构:错误提示管理_,是否被调试,取进程文件名,CreateToolhelp32Snapshot,Process32First,Process32Next,OpenProcess,Module32First,TerminateProcess,CloseHandle,GetWindowsDirectoryA,FindWindowA,GetWindowThreadProcessId,CallWindowProcA,特殊_是否被调试,特殊_防进程调试,特殊_脱离调试器,特殊_置调试异常,特殊_置调试陷阱,IsDebuggerPresent,GetProcessHeap,HeapAlloc,HeapFree,GetCurrentProcessId,DebugActiveProcess,


    ======主窗口程序集
               |  |
               |  |------ _启动子程序
               |  |
               |  |------ 错误提示管理_
               |  |
               |  |------ _时钟1_周期事件
               |  |
               |  |------ _按钮1_被单击
               |  |
               |  |------ _按钮2_被单击
               |  |
               |  |------ _按钮3_被单击
               |  |
               |  |------ _按钮4_被单击
               |  |
               |  |------ _按钮5_被单击
               |  |
               |  |------ _按钮6_被单击
               |  |
               |  |
    ======检测是否被调试
               |  |
               |  |------ 是否被调试
               |  |
               |  |------ 取进程文件名
               |  |
               |  |
    ======调用的Dll
               |  |
               |  |---[dll]------   CreateToolhelp32Snapshot
               |  |
               |  |---[dll]------   Process32First
               |  |
               |  |---[dll]------   Process32Next
               |  |
               |  |---[dll]------   OpenProcess
               |  |
               |  |---[dll]------   Module32First
               |  |
               |  |---[dll]------   TerminateProcess
               |  |
               |  |---[dll]------   CloseHandle
               |  |
               |  |---[dll]------   GetWindowsDirectoryA
               |  |
               |  |---[dll]------   FindWindowA
               |  |
               |  |---[dll]------   GetWindowThreadProcessId
               |  |
               |  |---[dll]------   CallWindowProcA
      ======_启动窗口程序集
               |  |
               |  |------ __启动窗口_创建完毕
               |  |
               |  |------ 特殊_是否被调试
               |  |
               |  |------ 特殊_防进程调试
               |  |
               |  |------ 特殊_脱离调试器
               |  |
               |  |------ 特殊_置调试异常
               |  |
               |  |------ 特殊_置调试陷阱
               |  |
               |  |
    ======调用的Dll
               |  |
               |  |---[dll]------   IsDebuggerPresent
               |  |
               |  |---[dll]------   GetProcessHeap
               |  |
               |  |---[dll]------   HeapAlloc
               |  |
               |  |---[dll]------   HeapFree
               |  |
               |  |---[dll]------   GetCurrentProcessId
               |  |
               |  |---[dll]------   DebugActiveProcess

      


    易语言程序调试反调试源码 易语言程序调试反调试源码 易语言程序调试反调试源码 易语言程序调试反调试源码


    调用的DLL命令:


    .DLL命令 CreateToolhelp32Snapshot, 整数型, , "CreateToolhelp32Snapshot"
        .参数 dwFlags, 整数型
        .参数 th32ProcessID, 整数型


    .DLL命令 Process32First, 整数型, , "Process32First"
        .参数 hSnapshot, 整数型
        .参数 lppe, PROCESSENTRY32


    .DLL命令 Process32Next, 整数型, , "Process32Next"
        .参数 hSnapshot, 整数型
        .参数 lppe, PROCESSENTRY32


    .DLL命令 OpenProcess, 整数型, , "OpenProcess", , 将句柄返回给过程对象
        .参数 dwDesiredAccess, 整数型
        .参数 bInheritHandle, 逻辑型
        .参数 dwProcessId, 整数型


    .DLL命令 Module32First, 整数型, , "Module32First"
        .参数 hSnapshot, 整数型
        .参数 lpme, MODULEENTRY32


    .DLL命令 TerminateProcess, , , "TerminateProcess"
        .参数 hProcess, 整数型
        .参数 uExitCode, 整数型


    .DLL命令 CloseHandle, , , "CloseHandle"
        .参数 hObject, 整数型


    .DLL命令 GetWindowsDirectoryA, 整数型, "kernel32.dll", "GetWindowsDirectoryA", , 取得Win目录_,这个函数能获取Windows目录的完整路径名.在这个目录里保存了大多数windows应用程序文件及初始化文件 ——返回值:复制到lpBuffer的一个字串的长度.如lpBuffer不够大不能容下整个字串就会返回lpBuffer要求的长度.零表示失败.会设置GetLastError
        .参数 用来装载目录的变量, 文本型, , 指定一个变量来储存目录文本用于装载Windows目录名.除非是根目录否则目录中不会有一个中止用的“\”字符
        .参数 允许的最大尺寸, 整数型, , lpBuffer字串的最大长度一般可以为 取文本长度(用来装载目录的变量)+1 看下面例子:


    .DLL命令 FindWindowA, 整数型, "user32.dll", "FindWindowA", , 查找窗口_,FindWindow函数功能:该函数获得一个顶层窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数不查找子窗口。在查找时不区分大小写。寻找窗口列表中第一个符合指定条件的顶级窗口很少要求同时按类与窗口名搜索.为向自己不准备参数传递一个零最简便的办法是传递vbNullString常数寻找窗口列表中第一个符合指定条件的顶级窗口(在vb里使用:FindWindow最常见的一个用途是获得ThunderRTMain类的隐藏窗口的句柄;该类是所有运行中vb执行程序的一部分.获得句柄后可用api函数GetWindowText取得这个窗口的名称;该名也是应用程序的标题)——如未找到相符窗口则返回零
        .参数 窗口类名, 文本型, , lpClassName如果此参数为0或为一个没有赋值的变量表示接收任何类名指向包含了窗口类名的空中止(C语言)字串的指针;或设为零表示接收任何类(“Progman桌面类名)指向一个指定了类名的空结束字符串,或一个标识类名字符串的成员的指针。如果该参数为一个成员,则它必须为前次调用theGlobafAddAtom函数产生的全局成员。该成员为16位,必须位于IpClassName的低 16位,高位必须为 0。
        .参数 窗口标题, 文本型, , lpWindowName如果参数为0或为一个没有赋值的变量表示接收任何标题指向包含了窗口文本(或标签)的空中止(C语言)字串的指针;或设为零表示接收任何窗口标题(“Program Manager” 桌面的标题)指向一个指定了窗口名(窗口标题)的空结束字符串。如果该参数为空,则为所有窗口全匹配


    .DLL命令 GetWindowThreadProcessId, 整数型, "user32.dll", "GetWindowThreadProcessId", , 取进程线程标识符_,函数功能:该函数返回创建指定窗口线程的标识和创建窗口的进程的标识符,后一项是可选的。获取与指定窗口关联在一起的一个线程和进程标识符——返回值:返回值为创建窗口的线程标识
        .参数 窗口句柄, 整数型, , hwnd指定窗口句柄
        .参数 进程标识符, 整数型, 传址, lpdwProcessId指定一个变量用于装载拥有那个窗口的一个进程的标识符接收进程标识的32位值的地址。如果这个参数不为NULL,GetWindwThreadProcessld将进程标识拷贝到这个32位值中,否则不拷贝。


    .DLL命令 CallWindowProcA, 整数型, "user32.dll", "CallWindowProcA"
        .参数 机器码, 字节集
        .参数 程序指针, 整数型
        .参数 参数1, 整数型
        .参数 参数2, 整数型
        .参数 参数3, 整数型


    调用的DLL命令:


    .DLL命令 IsDebuggerPresent, 整数型, "kernel32.dll", "IsDebuggerPresent"


    .DLL命令 GetProcessHeap, 整数型, "kernel32.dll", "GetProcessHeap", , 获取调用过程堆句柄


    .DLL命令 HeapAlloc, 整数型, "kernel32.dll", "HeapAlloc", , 从堆中分配内存
        .参数 hHeap, 整数型
        .参数 dwFlags, 整数型
        .参数 dwBytes, 整数型


    .DLL命令 HeapFree, 整数型, "kernel32.dll", "HeapFree", , 释放从堆中分配的内存
        .参数 hHeap, 整数型
        .参数 dwFlags, 整数型
        .参数 lpMem, 整数型


    .DLL命令 GetCurrentProcessId, 整数型, "kernel32.dll", "GetCurrentProcessId", , 获取当前进程一个唯一的标识符  当前的进程标识符


    .DLL命令 DebugActiveProcess, 整数型, "kernel32.dll", "DebugActiveProcess", , 连接调试进程
        .参数 dwProcessId, 整数型

    相关软件

    下载说明

    本站目前主要提供易语言源码、模块、支持库等下载大部分源码均为ZIP打包,
    注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
    部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
    由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。

    使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。

     

    推荐排行

    • 易语言小程序解密源码

      原贴 [易语言首发]PCVX小程序解密 因为 我也不懂 就看了下这个 PC小程序解密.e 发出来不知道怎么用,所以 度娘一步步找答案得到 的 自行研究捉摸了下 仅供学习参考 1.打开 PC小程序解...

    • 易语言模块基址获取源码

      易语言模块基址获取源码,模块基址获取,GetModuleBaseAddress...

    • 易语言流程控制编译原理

      易语言流程控制编译原理源码,流程控制编译原理,是否汉字,读字符,是否运算符,是否逻辑运算符,指针回溯,跳过空格,跳过注释,代码块,取程序返回值,外部接口_代码块执行,外部接口_表达式计算,表达式计算,逻辑判断,文本到逻辑,函数调用,函数_位或,函数_测试,函数_信...

    • 易语言搜索程序隐藏代码

      易语言搜索程序隐藏代码源码,搜索程序隐藏代码,枚举子程序...

    • 易语言打鱼学习链表源码

      易语言打鱼学习链表源码,打鱼学习链表,入栈,出栈,清空链表,取顶数据,取索引处值,取长度,取值处索引,插入,删除,倒置,是否为空,到八,入队,出队...

    • 易语言脚本解析类源码

      易语言脚本解析类源码,脚本解析类,子程序1,QEHash,创建进入许可证_,进入许可区_,退出许可区_,删除进入许可证_,启动线程_,销毁线程_,寻找字节集_,内存_申请,内存_释放,内存_尺寸,内存_读整数,内存_写整数,内存_复制,内存_写字节集,内存_写文本,内存_读字节集,...

    • 易语言核心算术计算解析

      易语言核心算术计算解析源码,核心算术计算解析,信息框3,信息框2...

    • 易语言获取网页和密码例

      易语言获取网页和密码例程源码,获取网页和密码例程,取文档对象,取浏览器文档对象_API,注册消息_API,发送消息_API,置鼠标捕获窗口_API,取消鼠标捕获窗口_API,取窗口类名_API,取座标窗口句柄_API,取光标位置_API...

    • 易语言置入代码调用子程

      易语言置入代码调用子程序办法源码,置入代码调用子程序办法,普通写法,置入写法...