易语言Lua支持库源码
系统结构:GetNewInf,lua_ProcessNotifyLib,建立全局信息,内部_附加功能主函数,函数改C调用约定,加载内存库,取内存DLL函数地址,调用内存函数,到子程序指针,取子程序地址,取指针地址,取文本指针,取字节型指针,取字节集指针,取短整数指针,取整数型指针,取小数型指针,取长整数指针,取双精度指针,取逻辑型指针,取日期型指针,取对象地址,取变体型地址,取文本地址,取字节集地址,取字节型数组地址,取短整数型数组地址,取整数型数组地址,取长整数型数组地址,取小数型数组地址,取双精度型数组地址,取逻辑型数组地址,取日期型数组地址,取文本型数组地址,取字节集数组地址,取指针数组地址,取对象数组地址,取变体型数组地址,修改C调用方式,调用内部功能,取字体指针,取字段信息指针,取打印设置信息指针,申请易程序内存,子程序指针到整数型,取参数数据信息,取参数地址,取参数数据类型,取数据类型类别,参数是否为空,GetBinArg,GetElementCount,Get_m_dtDataType,GetTextArg,指针到逻辑型,指针到整数,指针到日期时间,指针到长整数,指针到双精度数,指针到数据,释放指针数据,指针到字节,写内存整数,写内存文本,写内存字节集,SetDataType,返回字节型值,返回短整数型值,返回整数型值,返回长整数型值,返回小数型值,返回双精度小数型值,返回逻辑型值,返回日期时间型值,返回文本型值,返回字节集值,返回子程序指针值,返回窗口值,返回菜单值,返回字体值,返回编辑框值,返回图片框值,返回外形框值,返回画板值,返回分组框值,返回标签值,返回按钮值,返回选择框值,返回单选框值,返回组合框值,返回列表框值,返回选择列表框值,返回横向滚动条值,返回纵向滚动条值,返回进度条值,返回滑块条值,返回选择夹值,返回影像框值,返回日期框值,返回月历值,返回驱动器框值,返回目录框值,返回文件框值,返回颜色选择器值,返回超级链接框值,返回调节器值,返回通用对话框值,返回时钟值,返回打印机值,返回字段信息值,返回数据报值,返回客户值,返回服务器值,返回端口值,返回打印设置信息值,返回表格值,返回数据源值,返回通用提供者值,返回数据库提供者值,返回图形按钮值,返回外部数据库值,返回外部数据提供者值,返回对象值,返回变体型值,取易库信息指针,添加命令分类,生成_命令分类,子程序1,添加命令,添加命令参数,生成_命令,命令_生成当前索引,内部_取命令地址,取静态命令,内部_取命令参数结构,子程序2,类集_添加,生成_所有类集,子程序3,添加窗口组件,添加窗口组件命令,添加窗口组件属性,添加窗口组件事件,添加窗口组件事件参数,生成窗口组件属性备选数值信息,生成窗口组件属性备选文本信息,生成窗口组件属性文件名信息,内部_取属性结构,内部_取属性数量,内部_取事件结构,内部_取事件数量,内部_取事件参数结构,内部_取事件参数数量,子程序4,添加自定义数据类型,添加自定义数据类型成员,内部_取自定义数据类型参数结构,内部_取自定义数据类型参数数量,子程序5,添加类模块,添加类模块命令,子程序6,添加常量,生成_常量,子程序7,添加附加功能,生成_附加功能,初始化LUA动态库,luaL_newstate,luaL_openlibs,luaL_close,lua_pushcclosure,lua_setfield,luaL_loadstring,luaL_loadfile,lua_load,luaL_pcall,lua_getfield,lua_insert,luaL_gettop,lua_tolstring,luaL_type,lua_tonumber,luaL_optinteger,luaL_optlstring,lua_toboolean,lua_pushnumber,lua_pushboolean,lua_pushstring,lua_settop,lua_Open,lua_close,lua_register,lua_loadText,lua_loadFile,lua_pcall,lua_gettop,lua_type,lua_GetArgValue,lua_ReturnValue,lua_GetErrorMsg,复制库信息,VirtualProtectEx,复制内存_参数信息,复制内存_命令信息,复制内存_地址数组,复制内存_窗口组件事件,复制内存_,复制内存_窗口组件事件参数,复制内存_窗口组件属性,复制内存_整数型,复制内存_自定义数据参数信息,复制内存_自定义数据信息,锁住全局内存块_,全局堆栈分配_,创建窗口_,复制内存_常量信息,解锁全局内存块_,复制内存_字节集,赋值结构体_API,填充结构体内存_API,写入整数_API,赋值对象_API,填充对象内存_API,填充变体型内存_API,赋值变体型_API,取实例句柄_,设置窗口信息_,呼叫窗口函数地址_,取事件通知结构指针,发送消息_,载入位图_,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ GetNewInf
| |
| |------ lua_ProcessNotifyLib
| |
| |------ 建立全局信息
| |
| |
======支持库所需函数
| |
| |------ 内部_附加功能主函数
| |
| |------ 函数改C调用约定
| |
| |------ 加载内存库
| |
| |------ 取内存DLL函数地址
| |
| |------ 调用内存函数
| |
| |
======指针获取功能集
| |
| |------ 到子程序指针
| |
| |------ 取子程序地址
| |
| |------ 取指针地址
| |
| |------ 取文本指针
| |
| |------ 取字节型指针
| |
| |------ 取字节集指针
| |
| |------ 取短整数指针
| |
| |------ 取整数型指针
| |
| |------ 取小数型指针
| |
| |------ 取长整数指针
| |
| |------ 取双精度指针
| |
| |------ 取逻辑型指针
| |
| |------ 取日期型指针
| |
| |------ 取对象地址
| |
| |------ 取变体型地址
| |
| |------ 取文本地址
| |
| |------ 取字节集地址
| |
| |------ 取字节型数组地址
| |
| |------ 取短整数型数组地址
| |
| |------ 取整数型数组地址
| |
| |------ 取长整数型数组地址
| |
| |------ 取小数型数组地址
| |
| |------ 取双精度型数组地址
| |
| |------ 取逻辑型数组地址
| |
| |------ 取日期型数组地址
| |
| |------ 取文本型数组地址
| |
| |------ 取字节集数组地址
| |
| |------ 取指针数组地址
| |
| |------ 取对象数组地址
| |
| |------ 取变体型数组地址
| |
| |
======支持库功能集
| |
| |------ _启动子程序
| |
| |------ 修改C调用方式
| |
| |------ 调用内部功能
| |
| |------ 取字体指针
| |
| |------ 取字段信息指针
| |
| |------ 取打印设置信息指针
| |
| |------ 申请易程序内存
| |
| |------ 子程序指针到整数型
| |
| |
======参数信息获取集
| |
| |------ 取参数数据信息
| |
| |------ 取参数地址
| |
| |------ 取参数数据类型
| |
| |------ 取数据类型类别
| |
| |------ 参数是否为空
| |
| |------ GetBinArg
| |
| |------ GetElementCount
| |
| |------ Get_m_dtDataType
| |
| |------ GetTextArg
| |
| |
======数据转换集
| |
| |------ 指针到逻辑型
| |
| |------ 指针到整数
| |
| |------ 指针到日期时间
| |
| |------ 指针到长整数
| |
| |------ 指针到双精度数
| |
| |------ 指针到数据
| |
| |------ 释放指针数据
| |
| |------ 指针到字节
| |
| |------ 写内存整数
| |
| |------ 写内存文本
| |
| |------ 写内存字节集
| |
| |
======返回程序集
| |
| |------ SetDataType
| |
| |------ 返回字节型值
| |
| |------ 返回短整数型值
| |
| |------ 返回整数型值
| |
| |------ 返回长整数型值
| |
| |------ 返回小数型值
| |
| |------ 返回双精度小数型值
| |
| |------ 返回逻辑型值
| |
| |------ 返回日期时间型值
| |
| |------ 返回文本型值
| |
| |------ 返回字节集值
| |
| |------ 返回子程序指针值
| |
| |------ 返回窗口值
| |
| |------ 返回菜单值
| |
| |------ 返回字体值
| |
| |------ 返回编辑框值
| |
| |------ 返回图片框值
| |
| |------ 返回外形框值
| |
| |------ 返回画板值
| |
| |------ 返回分组框值
| |
| |------ 返回标签值
| |
| |------ 返回按钮值
| |
| |------ 返回选择框值
| |
| |------ 返回单选框值
| |
| |------ 返回组合框值
| |
| |------ 返回列表框值
| |
| |------ 返回选择列表框值
| |
| |------ 返回横向滚动条值
| |
| |------ 返回纵向滚动条值
| |
| |------ 返回进度条值
| |
| |------ 返回滑块条值
| |
| |------ 返回选择夹值
| |
| |------ 返回影像框值
| |
| |------ 返回日期框值
| |
| |------ 返回月历值
| |
| |------ 返回驱动器框值
| |
| |------ 返回目录框值
| |
| |------ 返回文件框值
| |
| |------ 返回颜色选择器值
| |
| |------ 返回超级链接框值
| |
| |------ 返回调节器值
| |
| |------ 返回通用对话框值
| |
| |------ 返回时钟值
| |
| |------ 返回打印机值
| |
| |------ 返回字段信息值
| |
| |------ 返回数据报值
| |
| |------ 返回客户值
| |
| |------ 返回服务器值
| |
| |------ 返回端口值
| |
| |------ 返回打印设置信息值
| |
| |------ 返回表格值
| |
| |------ 返回数据源值
| |
| |------ 返回通用提供者值
| |
| |------ 返回数据库提供者值
| |
| |------ 返回图形按钮值
| |
| |------ 返回外部数据库值
| |
| |------ 返回外部数据提供者值
| |
| |------ 返回对象值
| |
| |------ 返回变体型值
| |
| |
======易写易库类
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 取易库信息指针
| |
| |------ 添加命令分类
| |
| |------ 生成_命令分类
| |
| |------ 子程序1
| |
| |------ 添加命令
| |
| |------ 添加命令参数
| |
| |------ 生成_命令
| |
| |------ 命令_生成当前索引
| |
| |------ 内部_取命令地址
| |
| |------ 取静态命令
| |
| |------ 内部_取命令参数结构
| |
| |------ 子程序2
| |
| |------ 类集_添加
| |
| |------ 生成_所有类集
| |
| |------ 子程序3
| |
| |------ 添加窗口组件
| |
| |------ 添加窗口组件命令
| |
| |------ 添加窗口组件属性
| |
| |------ 添加窗口组件事件
| |
| |------ 添加窗口组件事件参数
| |
| |------ 生成窗口组件属性备选数值信息
| |
| |------ 生成窗口组件属性备选文本信息
| |
| |------ 生成窗口组件属性文件名信息
| |
| |------ 内部_取属性结构
| |
| |------ 内部_取属性数量
| |
| |------ 内部_取事件结构
| |
| |------ 内部_取事件数量
| |
| |------ 内部_取事件参数结构
| |
| |------ 内部_取事件参数数量
| |
| |------ 子程序4
| |
| |------ 添加自定义数据类型
| |
| |------ 添加自定义数据类型成员
| |
| |------ 内部_取自定义数据类型参数结构
| |
| |------ 内部_取自定义数据类型参数数量
| |
| |------ 子程序5
| |
| |------ 添加类模块
| |
| |------ 添加类模块命令
| |
| |------ 子程序6
| |
| |------ 添加常量
| |
| |------ 生成_常量
| |
| |------ 子程序7
| |
| |------ 添加附加功能
| |
| |------ 生成_附加功能
| |
| |
======DLL动态函数
| |
| |------ 初始化LUA动态库
| |
| |------ luaL_newstate
| |
| |------ luaL_openlibs
| |
| |------ luaL_close
| |
| |------ lua_pushcclosure
| |
| |------ lua_setfield
| |
| |------ luaL_loadstring
| |
| |------ luaL_loadfile
| |
| |------ lua_load
| |
| |------ luaL_pcall
| |
| |------ lua_getfield
| |
| |------ lua_insert
| |
| |------ luaL_gettop
| |
| |------ lua_tolstring
| |
| |------ luaL_type
| |
| |------ lua_tonumber
| |
| |------ luaL_optinteger
| |
| |------ luaL_optlstring
| |
| |------ lua_toboolean
| |
| |------ lua_pushnumber
| |
| |------ lua_pushboolean
| |
| |------ lua_pushstring
| |
| |------ lua_settop
| |
| |
======支持库命令
| |
| |------ lua_Open
| |
| |------ lua_close
| |
| |------ lua_register
| |
| |------ lua_loadText
| |
| |------ lua_loadFile
| |
| |------ lua_pcall
| |
| |------ lua_gettop
| |
| |------ lua_type
| |
| |------ lua_GetArgValue
| |
| |------ lua_ReturnValue
| |
| |------ lua_GetErrorMsg
| |
| |
======调用的Dll
| |
| |---[dll]------ 复制库信息
| |
| |---[dll]------ VirtualProtectEx
| |
| |---[dll]------ 复制内存_参数信息
| |
| |---[dll]------ 复制内存_命令信息
| |
| |---[dll]------ 复制内存_地址数组
| |
| |---[dll]------ 复制内存_窗口组件事件
| |
| |---[dll]------ 复制内存_
| |
| |---[dll]------ 复制内存_窗口组件事件参数
| |
| |---[dll]------ 复制内存_窗口组件属性
| |
| |---[dll]------ 复制内存_整数型
| |
| |---[dll]------ 复制内存_自定义数据参数信息
| |
| |---[dll]------ 复制内存_自定义数据信息
| |
| |---[dll]------ 锁住全局内存块_
| |
| |---[dll]------ 全局堆栈分配_
| |
| |---[dll]------ 创建窗口_
| |
| |---[dll]------ 复制内存_常量信息
| |
| |---[dll]------ 解锁全局内存块_
| |
| |---[dll]------ 复制内存_字节集
| |
| |---[dll]------ 赋值结构体_API
| |
| |---[dll]------ 填充结构体内存_API
| |
| |---[dll]------ 写入整数_API
| |
| |---[dll]------ 赋值对象_API
| |
| |---[dll]------ 填充对象内存_API
| |
| |---[dll]------ 填充变体型内存_API
| |
| |---[dll]------ 赋值变体型_API
| |
| |---[dll]------ 取实例句柄_
| |
| |---[dll]------ 设置窗口信息_
| |
| |---[dll]------ 呼叫窗口函数地址_
| |
| |---[dll]------ 取事件通知结构指针
| |
| |---[dll]------ 发送消息_
| |
| |---[dll]------ 载入位图_
调用的DLL命令:
.DLL命令 复制库信息, , , "RtlMoveMemory"
.参数 库数据, 字节集
.参数 库信息, 易库信息
.参数 库尺寸, 整数型
.DLL命令 VirtualProtectEx, 整数型, "kernel32", "VirtualProtectEx", ,
.参数 hProcess, 整数型
.参数 lpAddress, 整数型
.参数 dwSize, 整数型
.参数 flNewProtect, 整数型
.参数 lpflOldProtect, 整数型, 传址
.DLL命令 复制内存_参数信息, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory
.参数 目标数据地址, 整数型
.参数 源数据, 参数信息, 数组
.参数 尺寸, 整数型
.DLL命令 复制内存_命令信息, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory
.参数 目标数据地址, 整数型
.参数 源数据, 命令信息, 数组
.参数 尺寸, 整数型
.DLL命令 复制内存_地址数组, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory
.参数 目标数据地址, 整数型
.参数 源数据, 整数型, 数组
.参数 尺寸, 整数型
.DLL命令 复制内存_窗口组件事件, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory
.参数 目标数据地址, 整数型
.参数 源数据, 窗口组件事件, 数组
.参数 尺寸, 整数型
.DLL命令 复制内存_, , "kernel32.dll", "RtlMoveMemory"
.参数 目标数据地址, 整数型
.参数 源数据, 整数型
.参数 尺寸, 整数型
.DLL命令 复制内存_窗口组件事件参数, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory
.参数 目标数据地址, 整数型
.参数 源数据, 窗口组件事件参数, 数组
.参数 尺寸, 整数型
.DLL命令 复制内存_窗口组件属性, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory
.参数 目标数据地址, 整数型
.参数 源数据, 窗口组件属性, 数组
.参数 尺寸, 整数型
.DLL命令 复制内存_整数型, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory
.参数 目标数据地址, 整数型
.参数 源数据, 整数型, 传址
.参数 尺寸, 整数型
.DLL命令 复制内存_自定义数据参数信息, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory
.参数 目标数据地址, 整数型
.参数 源数据, 自定义数据参数信息, 数组
.参数 尺寸, 整数型
.DLL命令 复制内存_自定义数据信息, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory
.参数 目标数据地址, 整数型
.参数 源数据, 自定义数据信息, 数组
.参数 尺寸, 整数型
.DLL命令 锁住全局内存块_, 整数型, "kernel32.dll", "GlobalLock"
.参数 内存句柄, 整数型, , hMem
.DLL命令 全局堆栈分配_, 整数型, "kernel32.dll", "GlobalAlloc"
.参数 标志, 整数型, , wFlags
.参数 字节, 整数型, , dwBytes
.DLL命令 创建窗口_, 整数型, "user32.dll", "CreateWindowExA"
.参数 扩展风格, 整数型
.参数 类名, 文本型, , 刚才注册的类名
.参数 窗口标题, 文本型
.参数 风格, 整数型
.参数 屏幕横坐标, 整数型
.参数 屏幕纵坐标, 整数型
.参数 宽度, 整数型
.参数 高度, 整数型
.参数 父窗口句柄, 整数型, , 没有就写0
.参数 菜单句柄, 整数型
.参数 模块句柄, 整数型
.参数 参数, 整数型
.DLL命令 复制内存_常量信息, 整数型, "kernel32", "RtlMoveMemory", , RtlMoveMemory
.参数 目标数据地址, 整数型
.参数 源数据, 常量信息, 数组
.参数 尺寸, 整数型
.DLL命令 解锁全局内存块_, 整数型, "kernel32.dll", "GlobalUnlock"
.参数 内存句柄, 整数型, , hMem
.DLL命令 复制内存_字节集, , "kernel32.dll", "RtlMoveMemory"
.参数 目标数据地址, 字节集, 传址
.参数 源数据, 整数型, 数组
.参数 尺寸, 整数型
.DLL命令 赋值结构体_API, , , "RtlMoveMemory"
.参数 Destination, 整数型
.参数 Source, 整数型
.参数 Length, 整数型
.DLL命令 填充结构体内存_API, , "kernel32.dll", "RtlFillMemory"
.参数 目的内存, 整数型, , Destination
.参数 长度, 整数型, , Length
.参数 填充内容, 字节型, , Fill
.DLL命令 写入整数_API, , , "RtlMoveMemory"
.参数 Destination, 整数型
.参数 Source, 整数型, 传址
.参数 Length, 整数型
.DLL命令 赋值对象_API, , , "RtlMoveMemory"
.参数 Destination, 整数型
.参数 Source, 对象
.参数 Length, 整数型
.DLL命令 填充对象内存_API, , "kernel32.dll", "RtlFillMemory"
.参数 目的内存, 对象, , Destination
.参数 长度, 整数型, , Length
.参数 填充内容, 字节型, , Fill
.DLL命令 填充变体型内存_API, , "kernel32.dll", "RtlFillMemory"
.参数 目的内存, 变体型, , Destination
.参数 长度, 整数型, , Length
.参数 填充内容, 字节型, , Fill
.DLL命令 赋值变体型_API, , , "RtlMoveMemory"
.参数 Destination, 整数型
.参数 Source, 变体型
.参数 Length, 整数型
.DLL命令 取实例句柄_, 整数型, , "GetModuleHandleA"
.参数 程序名, 文本型
.DLL命令 设置窗口信息_, 整数型, "user32", "SetWindowLongA", , 在窗口结构中为指定的窗口设置信息 指定数据的前一个值
.参数 窗口句柄, 整数型, , hwnd,欲为其取得信息的窗口的句柄
.参数 窗口信息值, 整数型, , nIndex,请参考GetWindowLong函数的nIndex参数的说明
.参数 窗口信息新值, 整数型, , dwNewLong,由nIndex指定的窗口信息的新值
.DLL命令 呼叫窗口函数地址_, 整数型, "user32.dll", "CallWindowProcA"
.参数 前一窗口函数地址, 整数型
.参数 窗口句柄, 整数型
.参数 消息值, 整数型
.参数 附加参数1, 整数型
.参数 附加参数2, 整数型
.DLL命令 取事件通知结构指针, 整数型, "kernel32", "lstrcpynA"
.参数 数据1, 事件通知结构
.参数 数据2, 事件通知结构
.参数 数据长度, 整数型
.DLL命令 发送消息_, 整数型, "user32", "SendMessageA", , 调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。SendMessageBynum, ; SendMessageByString是该函数的“类型security”声明形式 由具体的消息决定
.参数 窗口句柄, 整数型, , 要接收消息的那个窗口的句柄
.参数 信息值, 整数型, , 消息的标识符
.参数 参数一, 整数型, , 具体取决于消息
.参数 参数二, 整数型, , 具体取决于消息;
.DLL命令 载入位图_, 整数型, "user32.dll", "LoadBitmapA", , 从指定的模块或应用程序实例中载入一幅位图
.参数 实例句柄, 整数型, , hInstance,参见相关帮助
.参数 位图标识, , , lpBitmapName,参见相关帮助
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。