易语言制作调试助手

DLL命令表

.版本 2
.DLL命令 窗口_FindWindowA, 整数型, "user32", "FindWindowA", , 句柄操作
  .参数 lpClassName, 文本型
  .参数 lpWindowName, 文本型
.DLL命令 窗口_SendMessage, 整数型, , "SendMessageA", , 句柄操作
  .参数 HWND
  .参数 sc
  .参数 z1
  .参数 z2, 文本型
.DLL命令 窗口_PostMessage, 整数型, , "PostMessageA", , 句柄操作
  .参数 HWND
  .参数 sc
  .参数 z1
  .参数 z2
.DLL命令 窗口_SetParent, 整数型, "user32", "SetParent", , 句柄操作
  .参数 hWndChild, 整数型
  .参数 hWndNewParent, 整数型
.DLL命令 窗口_FindWindowExA, 整数型, "user32", "FindWindowExA", , 句柄操作
  .参数 hWnd1, 整数型
  .参数 hWnd2, 整数型
  .参数 lpsz1, 文本型
  .参数 lpsz2, 文本型

全局变量表

.版本 2
.全局变量 易句柄, 整数型

路径

.版本 2
.程序集 Setting
.子程序 __启动窗口_创建完毕
易句柄 = -1
.如果 (读配置项 (取运行目录 () + “\program.ini”, “Check”, 选择框_自动运行.标题, “假”) = “真”)
  选择框_自动运行.选中 = 真
.否则
  选择框_自动运行.选中 = 假
  写配置项 (取运行目录 () + “\program.ini”, “Check”, 选择框_自动运行.标题, “假”)
.如果结束
.如果 (读配置项 (取运行目录 () + “\program.ini”, “Check”, 选择框_指定路径.标题, “假”) = “真”)
  选择框_指定路径.选中 = 真
.否则
  选择框_指定路径.选中 = 假
  写配置项 (取运行目录 () + “\program.ini”, “Check”, 选择框_指定路径.标题, “假”)
.如果结束
.如果 (读配置项 (取运行目录 () + “\program.ini”, “Check”, 选择框_绝对路径.标题, “假”) = “真”)
  选择框_绝对路径.选中 = 真
.否则
  选择框_绝对路径.选中 = 假
  写配置项 (取运行目录 () + “\program.ini”, “Check”, 选择框_绝对路径.标题, “假”)
.如果结束
.如果 (读配置项 (取运行目录 () + “\program.ini”, “Data”, “编译路径”, “\Debug\Program.exe”) = “\Debug\Program.exe”)
  写配置项 (取运行目录 () + “\program.ini”, “Data”, “编译路径”, “\Debug\Program.exe”)
.否则
  Data_Path.内容 = 读配置项 (取运行目录 () + “\program.ini”, “Data”, “编译路径”, “\Debug\Program.exe”)
  _Data_Path_失去焦点 ()
.如果结束
易句柄 = 窗口_FindWindowA (“ENewFrame”, 字符 (0))
.如果 (易句柄 = 0)
  .如果 (信息框 (“未找到易语言进程,是否需要进入程序设置页面?”, #是否钮, “提示:”, ) = #是钮 或 是否为调试版 ())
    _启动窗口.可视 = 真
  .否则
    结束 ()
  .如果结束
.否则
  .如果 (是否为调试版 ())
    _启动窗口.可视 = 真
  .否则
    载入 (Run, , 假)
    _启动窗口.销毁 ()
    信息框 (“插件加载成功”, 0, “提示:”, )
  .如果结束
.如果结束
.子程序 _选择框_自动运行_被单击
写配置项 (取运行目录 () + “\program.ini”, “Check”, 选择框_自动运行.标题, 到文本 (选择框_自动运行.选中))
.子程序 _选择框_指定路径_被单击
写配置项 (取运行目录 () + “\program.ini”, “Check”, 选择框_指定路径.标题, 到文本 (选择框_指定路径.选中))
.子程序 _选择框_绝对路径_被单击
写配置项 (取运行目录 () + “\program.ini”, “Check”, 选择框_绝对路径.标题, 到文本 (选择框_绝对路径.选中))
.子程序 _Data_Path_获得焦点
Data_Path.背景颜色 = #艳青
.子程序 _Data_Path_失去焦点
Data_Path.背景颜色 = #白色
.如果 (删首尾空 (Data_Path.内容) = “” 或 寻找文本 (Data_Path.内容, “?”, , 假) > -1 或 寻找文本 (Data_Path.内容, “*”, , 假) > -1 或 寻找文本 (Data_Path.内容, “|”, , 假) > -1 或 寻找文本 (Data_Path.内容, “<”, , 假) > -1 或 寻找文本 (Data_Path.内容, “>”, , 假) > -1)
  选择框_指定路径.选中 = 假
  _选择框_指定路径_被单击 ()
  .如果 (易句柄 > -1)
    信息框 (“路径为空或含有不合法符号”, 0, “提示:”, )
  .否则
    Data_Path.内容 = “”
  .如果结束
.否则
  .如果 (选择框_绝对路径.选中 = 假 且 寻找文本 (Data_Path.内容, “:”, , 假) > -1)
    选择框_指定路径.选中 = 假
    _选择框_指定路径_被单击 ()
    .如果 (易句柄 > -1)
      信息框 (“非绝对路径禁止使用冒号”, 0, “提示:”, )
    .否则
      Data_Path.内容 = “”
    .如果结束
  .否则
    写配置项 (取运行目录 () + “\program.ini”, “Data”, “编译路径”, Data_Path.内容)
  .如果结束
.如果结束

调试

.版本 2
.支持库 spec
.程序集 Running
.程序集变量 路径, 文本型
.子程序 _Run_创建完毕
.如果 (读配置项 (取运行目录 () + “\program.ini”, “Check”, “自定义程序编译写出路径”, “假”) = “真”)
  路径 = 读配置项 (取运行目录 () + “\program.ini”, “Data”, “编译路径”, “\Debug\Program.exe”)
  .如果 (路径 ≠ “\Debug\Program.exe”)
    .如果真 (读配置项 (取运行目录 () + “\program.ini”, “Check”, “绝对路径”, “假”) ≠ “真”)
      .如果真 (取文本左边 (路径, 1) ≠ “\”)
        路径 = “\” + 路径
      .如果真结束
      路径 = 取运行目录 () + 路径
    .如果真结束
  .否则
    路径 = 取运行目录 () + “\Debug\Program.exe”
    创建目录 (取运行目录 () + “\Debug\”)
  .如果结束
.否则
  路径 = 取运行目录 () + “\Debug\Program.exe”
  创建目录 (取运行目录 () + “\Debug\”)
.如果结束
窗口_SetParent (Run.取窗口句柄 (), 易句柄)
.子程序 _Run_将被销毁
结束 ()
.子程序 _编译按钮_被单击, , , 编译
调试_编译程序 (路径, 易句柄)
.如果真 (读配置项 (取运行目录 () + “\program.ini”, “Check”, “程序编译后自动调试运行”, “假”) = “真”)
  .如果真 (文件是否存在 (路径))
    .如果真 (运行 (路径, 假, ) = 假)
      信息框 (“程序运行失败”, 0, “提示:”, )
    .如果真结束
  .如果真结束
.如果真结束
.子程序 _运行按钮_被单击, , , 运行
调试_编译程序 (路径, 易句柄)
.如果真 (文件是否存在 (路径))
  .如果真 (运行 (路径, 假, ) = 假)
    信息框 (“程序运行失败”, 0, “提示:”, )
  .如果真结束
.如果真结束
.子程序 调试_编译程序, , 公开
.参数 编译路径, 文本型
.参数 易语言句柄, 整数型
.局部变量 编译句柄, 整数型
.局部变量 写出句柄, 整数型
调试_删除程序 (编译路径)
目录_逐级创建 (编译路径)
窗口_PostMessage (易语言句柄, 256, #F7键, 0)
窗口_PostMessage (易语言句柄, 257, #F7键, 0)
.计次循环首 (50, ) ' 5.0 秒
  编译句柄 = 窗口_FindWindowA (字符 (0), “请输入欲编译到的可执行文件名:”)
  延迟 (100)
  .如果真 (编译句柄 > 0)
    跳出循环 ()
  .如果真结束
.计次循环尾 ()
.如果真 (编译句柄 > 0)
  .计次循环首 (30, ) ' 3.0 秒
    写出句柄 = 窗口_FindWindowExA (编译句柄, 0, “Edit”, 字符 (0))
    延迟 (100)
    .如果真 (写出句柄 > 0)
      跳出循环 ()
    .如果真结束
  .计次循环尾 ()
  .如果真 (写出句柄 > 0)
    窗口_SendMessage (写出句柄, 12, 0, 编译路径)
    写出句柄 = 窗口_FindWindowExA (编译句柄, 0, “Button”, “保存(&S)”)
    .如果真 (写出句柄 > 0)
      窗口_PostMessage (编译句柄, 256, #回车键, 0)
      窗口_PostMessage (编译句柄, 257, #回车键, 0)
      .计次循环首 (50, ) ' 5.0 秒
        延迟 (100)
        .如果真 (文件是否存在 (编译路径))
          跳出循环 ()
        .如果真结束
      .计次循环尾 ()
      .计次循环首 (5, ) ' 0.5 秒
        编译句柄 = 窗口_FindWindowA (字符 (0), “询问:”)
        延迟 (100)
        .如果真 (编译句柄 > 0)
          跳出循环 ()
        .如果真结束
      .计次循环尾 ()
      .如果真 (编译句柄 > 0)
        写出句柄 = 窗口_FindWindowExA (编译句柄, 0, “Button”, “写出(&W)”)
        .如果真 (写出句柄 > 0)
          窗口_PostMessage (编译句柄, 256, #回车键, 0)
          窗口_PostMessage (编译句柄, 257, #回车键, 0)
        .如果真结束
      .如果真结束
    .如果真结束
  .如果真结束
.如果真结束
.如果真 (文件是否存在 (编译路径) = 假)
  信息框 (“程序编译失败”, 0, “提示:”, )
.如果真结束
.子程序 调试_删除程序, , 公开
.参数 编译路径, 文本型
.局部变量 exe, 文本型
.局部变量 dir, 文本型
.如果真 (文件是否存在 (编译路径))
  dir = 取文本左边 (编译路径, 倒找文本 (编译路径, “\”, , 假))
  exe = 取文本右边 (编译路径, 取文本长度 (编译路径) - 取文本长度 (dir))
  运行 (“cmd /c taskkill /f /im ” + exe, 真, 1)
  删除文件 (编译路径)
  .如果真 (寻找文本 (dir, 取运行目录 () + “\”, , 假) > -1)
    dir = 取文本右边 (dir, 取文本长度 (dir) - 寻找文本 (编译路径, 取运行目录 () + “\”, , 假)) ' X:\xxxx\xxx\  ->  xxx\
    dir = 取文本左边 (dir, 寻找文本 (dir + “\”, “\”, , 假) - 1) ' xxx\  ->  xxx
    .如果真 (取文本右边 (dir, 1) ≠ “\”)
      dir = dir + “\”
    .如果真结束
    删除目录 (取运行目录 () + “\” + dir)
  .如果真结束
.如果真结束
.子程序 目录_逐级创建, , 公开
.参数 目录路径, 文本型
.参数 是否为网络路径, 逻辑型, 可空
.局部变量 标识, 文本型
.局部变量 文本, 文本型
.如果 (是否为网络路径)
  标识 = “/”
.否则
  标识 = “\”
.如果结束
.判断循环首 (寻找文本 (目录路径, 标识, 取文本长度 (文本) + 1, 假) > -1)
  文本 = 取文本左边 (目录路径, 寻找文本 (目录路径, 标识, 取文本长度 (文本) + 1, 假))
  创建目录 (文本)
.判断循环尾 ()

运行结果:

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接

(0)

相关推荐

  • 易语言注册自定义协议Register protocol

    Register protocol tencent:// thunder:// 是 腾讯 和 迅雷 的协议,即页面上或地址栏里的链接只要输入带有 tencent://- 的协议,就会自动调用一个已写好的程序执行该协议的操作. 或者是打开页面,迅雷的是下载资源的链接. 通过微软的说明,知道这是Register protocol,对于 Windows.Linux 和 OS X 操作系统都可以注册这样的协议.比如说Windows,其实只需写入注册表,即可实现协议与执行程序的关联. DLL命令表 .版本

  • 易语言枚举进程通过窗口句柄获取已经登录的QQ号码

    DLL命令表 .版本 2 .DLL命令 GetDesktopWindow, 整数型, "user32.dll", "GetDesktopWindow" .DLL命令 CreateToolhelp32Snapshot, 整数型, "kernel32", "CreateToolhelp32Snapshot" .参数 dwFlags, 整数型, , 0 .参数 th32ProcessIE, 整数型, , 0 .DLL命令 Proce

  • 易语言实现多线程验证代理是否有效的代码

    载入程序 .版本 2 .程序集 启动 .子程序 _启动子程序, 整数型 载入 (_主窗口, , 假) 返回 (0) 多线程的方式验证ip的代码 此功能需要加载鱼刺类_线程操作模块和鱼刺类_HTTP模块 .版本 2 .支持库 iext .程序集 主窗口程序集 .程序集变量 线程池, 鱼刺类_线程池Ex, , , 框架 .程序集变量 临界, 鱼刺类_临界许可 .程序集变量 线程, 鱼刺类_线程操作 .程序集变量 验证网址, 文本型, , , 配置 .程序集变量 验证字符串, 文本型 .程序集变量 是

  • 易语言CNA算法实现快速加密解密文件的代码

    CNA文件加解密数据算法 .版本 2 .支持库 spec .支持库 iext .程序集 窗口程序集_启动窗口 .子程序 __启动窗口_创建完毕 .局部变量 code, 字节集, , , 加密密码 .局部变量 test, 字节集, , , 要加密码的数据字节集 .局部变量 i, 整数型, , , 查看反馈信息 ' 简单例子 test = 到字节集 ("aaaaaaa aaa.*#(中.329}@#¥") code = 到字节集 ("中.有 3a#") CNA数据 (t

  • 易语言EXUI支持库制作红色简约网络验证UI界面的代码

    红色简约网络验证UI界面 .版本 2 .支持库 exui .支持库 spec .程序集 窗口程序集_启动窗口 .程序集变量 用户名, 文本型 .程序集变量 状态码, 文本型 .子程序 _头像_框架_鼠标左键按下 .参数 xy坐标, 整数型 .参数 wp, 整数型 _启动窗口.发送信息 (161, 2, 0) .子程序 _选择夹EX1_鼠标左键按下 .参数 xy坐标, 整数型 .参数 wp, 整数型 _启动窗口.发送信息 (161, 2, 0) .子程序 _登录_输入账号_鼠标左键按下 .参数 x

  • 易语言调用whois实现域名批量查询与注册的代码

    域名批量查询注册与whois查询的代码 此功能需要加载精易模块5.6 .版本 2 .支持库 EThread .程序集 窗口程序集_启动窗口 .子程序 _批量查询_被单击 启动线程 (&查询是否可以注册, , ) .子程序 查询是否可以注册 .局部变量 xml, 文本型 .局部变量 域名数组, 文本型, , "0" .局部变量 计次, 整数型 批量查询.禁止 = 真 批量查询.标题 = "正在查询..." 域名数组 = 分割文本 (删首尾空 (批量域名.内容)

  • 易语言利用HOOK注入获取内容的代码

    DLL命令表 .版本 2 .DLL命令 RtlMoveMemory, 整数型, "kernel32.dll", "RtlMoveMemory" .参数 Destination, 整数型 .参数 Source, 整数型 .参数 Length, 整数型 .DLL命令 CreateWindowExA, 整数型 .参数 dwExStyle, 整数型 .参数 lpClassName, 文本型 .参数 lpWindowName, 文本型 .参数 dwStyle, 整数型 .参数

  • 易语言制作永恒之蓝局域网扫描器的代码

    DLL命令表 .版本 2 .DLL命令 Sleep, , "kernel32.dll", "Sleep", 公开 .参数 dwMilliseconds, 整数型 接口程序集 .版本 2 .程序集 接口程序集 .子程序 取网段, 文本型 .参数 IP地址, 文本型 返回 (取文本左边 (IP地址, 倒找文本 (IP地址, ".", , 假))) .子程序 格式化尾数, 文本型 .参数 文本, 文本型 返回 (文本替换 ("000"

  • 易语言利用鼠标模拟点击的方式实现自动画图的代码

    DLL命令表 .版本 2 .DLL命令 PostMessageA, 整数型, "user32.dll", "PostMessageA", , 如果函数调用成功,返回非零值:如果函数调用失败,返回值是零 .参数 hWnd, 整数型, , 其窗口程序接收消息的窗口的句柄 .参数 Msg, 整数型, , 指定被寄送的消息 .参数 wParam, 整数型, , 指定附加的消息特定的信息 .参数 IParam, 整数型, , 指定附加的消息特定的信息 自动绘画的代码 此功能需

  • 易语言解析B站直播间的地址获得弹幕内容的代码

    常量数据表 .版本 2 .常量 常量1, "<文本长度: 31>", , <span class="info-text" title=" .常量 常量2, "<文本长度: 2>", , "> .常量 常量3, "<文本长度: 19>", , http://i0.hdslb.com.常量 常量4, "<文本长度: 4>", , .

  • 易语言实现多线程计算的代码

    多线程计算 此功能需要加载精易模块5.6 .版本 2 .支持库 iext .程序集 窗口程序集1 .程序集变量 总线程id, 整数型 .程序集变量 线程判断数量, 整数型 .程序集变量 线程总数, 整数型 .程序集变量 线程id, 整数型 .程序集变量 当前表项, 整数型 .程序集变量 许可证, 整数型 .子程序 __启动窗口_创建完毕 .局部变量 i1, 整数型 .计次循环首 (10000, i1) 置随机数种子 () 超级列表框1.插入表项 (, , , , , ) 超级列表框1.置标题 (

  • 易语言提取ICO图标支持多种图像格式转换的代码

    DLL命令表 .版本 2 .DLL命令 拷贝内存_BITMAPINFOHEADER, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory .参数 目标数据地址, 字节集, 传址, lpvDest .参数 源数据, BITMAPINFOHEADER, 传址, lpvSource .参数 尺寸, 整数型, , 40cbCopy .DLL命令 拷贝内存_ICONFILEHEADER, 整数型, "kernel32&

  • 易语言制作文件夹压缩备份工具的代码

    文件夹压缩备份工具 此功能需要加载精易模块5.6 .版本 2 .支持库 shell .支持库 iext .支持库 eCompress .程序集 窗口程序集1 .程序集变量 时间戳, 文本型 .程序集变量 过滤文本, 文本型, , "0" .子程序 _文件路径按钮_被单击 .局部变量 路径, 文本型 路径 = 浏览文件夹 ("选择一个文件夹备份", 假) .判断开始 (路径 = "") 提示框 ("请选择文件夹备份!") .默认

  • 易语言实现文件夹加密的代码

    加密锁上文件夹 此功能需要加载精易模块5.6 .版本 2 .支持库 shell .支持库 spec .支持库 dp1 .程序集 窗口程序集1 .程序集变量 密码, 文本型 .子程序 _按钮_浏览文件_被单击 编辑框_路径.内容 = 浏览文件夹 ("打开你需要加密的文件", ) .子程序 _按钮_加密_被单击 .局部变量 文件夹名称, 文本型 .判断开始 (寻找文本 (编辑框_路径.内容, "[已加密]", , 假) ≠ -1) 提示框 ("已加密"

  • 易语言鱼刺线程池拨号模板

    鱼刺线程池拨号模板 此功能需要加载精易模块5.6和鱼刺类_多线程应用模块 .版本 2 .支持库 iext .支持库 spec .程序集 窗口程序集_启动窗口 .程序集变量 thread, 鱼刺类_线程池 .程序集变量 ADSL, ADSL拨号类 .程序集变量 Adslname, 文本型, , , 宽带连接名称 .程序集变量 Adsluser, 文本型, , , 宽带账号 .程序集变量 Adslpwd, 文本型, , , 宽带密码 .程序集变量 许可 .程序集变量 拨号频率 .程序集变量 线程次数

随机推荐