|
分享源码
界面截图: |
- |
是否带模块: |
- |
备注说明: |
- |
今天玩到了变体型 就好奇他的结构,找遍全网资料还是挺少的,自己留个笔记吧!
变体分析 ()变量名 | 类 型 | 静态 | 数组 | 备 注 | _VAR | 变体型 | | | _Addr | 整数型 | | | _Addr_1 | 整数型 | | | _VAR_TYPE | 整数型 | | |
_VAR. 赋值 (“abc啊123”, ) _Addr = 取数据_通用型 (_VAR )_VAR_TYPE = 指针到整数 (_Addr + 0 )调试输出 (“数据类型: ” + 变体_取类型 (_VAR_TYPE )) 调试输出 (“Addr + 0”, _VAR_TYPE ) 调试输出 (“Addr + 2”, 指针到整数 (_Addr + 2 )) 调试输出 (“Addr + 4”, 指针到整数 (_Addr + 4 )) _Addr_1 = 指针到整数 (_Addr + 8 ) 调试输出 (“Addr + 8”, _Addr_1 )如果真 (_VAR_TYPE = 8 ) 调试输出 (“文本W:”, 指针到字节集 (_Addr_1, 7 × 2 + 2 )) 调试输出 (“Addr + 12”, 指针到整数 (_Addr + 12)) 如果真 (_VAR_TYPE > 8192 )调试输出 (“------------------------------ 变体数组结构 尺寸为24字节 ------------------------”)调试输出 (“Addr_1 + 0”, 指针到整数 (_Addr_1 + 0 )) 调试输出 (“Addr_1 + 4”, 指针到整数 (_Addr_1 + 4 )) 调试输出 (“Addr_1 + 8”, 指针到整数 (_Addr_1 + 8 )) 调试输出 (“Addr_1 + 12”, 指针到整数 (_Addr_1 + 12 )) 调试输出 (“Addr_1 + 12 - 成员1”, 指针到字节集 (指针到整数 (指针到整数 (_Addr_1 + 12 ) + 0 ), 2 + 2 )) 调试输出 (“Addr_1 + 12 - 成员2”, 指针到字节集 (指针到整数 (指针到整数 (_Addr_1 + 12 ) + 4 ), 2 + 2 )) 调试输出 (“Addr_1 + 16”, 指针到整数 (_Addr_1 + 16 )) 调试输出 (“Addr_1 + 20”, 指针到整数 (_Addr_1 + 20 )) 变量名 | 类 型 | 静态 | 数组 | 备 注 | _Code | 整数型 | | | _Msg | 文本型 | | | 如果 (Code ≥ 8192 )_Msg = “ - 数组”_Code = Code % 8192 _Code = Code 判断 (_Code = 0 )_Msg = “Empty” + _Msg 判断 (_Code = 1 )_Msg = “Null” + _Msg 判断 (_Code = 2 )_Msg = “整数型” + _Msg 判断 (_Code = 3 )_Msg = “长整数型” + _Msg 判断 (_Code = 4 )_Msg = “小数型” + _Msg 判断 (_Code = 5 )_Msg = “双精度小数型” + _Msg 判断 (_Code = 6 )_Msg = “货币型” + _Msg 判断 (_Code = 7 )_Msg = “时间日期型” + _Msg 判断 (_Code = 8 )_Msg = “文本型” + _Msg 判断 (_Code = 9 )_Msg = “对象” + _Msg 判断 (_Code = 10 )_Msg = “错误” + _Msg 判断 (_Code = 11 )_Msg = “逻辑型” + _Msg 判断 (_Code = 12 )_Msg = “变体型” + _Msg 判断 (_Code = 13 )_Msg = “对象” + _Msg 判断 (_Code = 17 )_Msg = “字节型” + _Msg _Msg = “未知”返回 (_Msg)置入代码 ({ 139, 69, 8, 139, 0, 201, 194, 4, 0 })返回 (0 )
补充内容 (2019-11-1 23:28):
宽字节文本可以用 Unicode宽文本 转 Ansi文本 解码 如 U2A({79,0,0,0}) |
评分
-
查看全部评分
|