VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)

VB爱好者乐园(VBGood)

 找回密码
 立即注册
搜索
楼主: 19900603

[Open Source]脚本编译解释引擎

[复制链接]
头像被屏蔽
发表于 2014-2-14 17:11:52 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-14 19:21:32 | 显示全部楼层
本帖最后由 19900603 于 2014-2-14 19:25 编辑

修复了下。。

Xp下 在Main中调用MessageBoxA时 还会崩溃  在别的函数没事
         有对这方面感兴趣的可以看看是什么情况
      出错时出现  RtlWerpReportException failed with status code :-1073741823. Will try to launch the process directly
没传参数直接Call?? 可是打印参数都在的- -!

Win7 出现的情况很少


源码 , 编译源码都在

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

发表于 2014-2-14 21:56:27 | 显示全部楼层
acme_pjz 发表于 2014-2-13 22:37
不要慌,lua也是用字节码的 看到你的脚本语法我就想到NSIS的脚本,也是长得像汇编的栈式计算机代码……


luajit可以编译成机器码,而且可以直接调API或者外部dll,跨平台跨cpu.但不支持多线程.

点评

lua VB的例子太少了 对于真正菜鸟的我们 很难学习。。。  发表于 2014-2-15 11:57
回复 支持 反对

使用道具 举报

发表于 2014-2-15 00:00:59 | 显示全部楼层
19900603 发表于 2014-2-14 19:21
修复了下。。

Xp下 在Main中调用MessageBoxA时 还会崩溃  在别的函数没事

RtlWerpReportException 是神马API?没见过

点评

找到原因了 - -!  发表于 2014-2-15 14:39
无参数直接Call MessageBoxA 时 DebugView 里会出现 貌似是 SEH 处理的。。。  发表于 2014-2-15 12:40

评分

参与人数 1威望 +8 人气 +1 收起 理由
zzyong00 + 8 + 1 很给力

查看全部评分

回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-15 14:38:35 | 显示全部楼层
本帖最后由 19900603 于 2014-2-15 14:42 编辑

Vb的高级优化 害死我了。。。。。 刚才突发奇想打开高级优化什么情况 还报错么?
发现 本来高级优化就全开着。。。我了个去。。全部关闭。编译了下  困扰我的错误终于出现了。。。
下标越界。。。 嘎嘎 Address数组设小了。。下标就来袭了。。
修复了Bug  终于不会崩了
添加了  Shl  Shr Xor And Mod Or 计算符
编译 源码 需要 VbAux插件呦!!
有神马好的建议 和Bug 跟帖提出吧。。。

加分呦!!!!!



插件 - -! 自己推广下。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 1威望 +20 人气 +3 收起 理由
acme_pjz + 20 + 3 精品文章

查看全部评分

回复 支持 反对

使用道具 举报

发表于 2014-2-15 17:33:26 | 显示全部楼层
瞧瞧以下。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-15 21:29:15 | 显示全部楼层
本帖最后由 19900603 于 2014-2-15 21:32 编辑

额 今天休息没上班 又更新了下。。。
支持 Byte Integer Long  结构体  4种数值变量了。。
Return 返回值  不用定义返回大小了。。 直接用define定义即可

//$500 长度缺省为4字节Long型
define $500
//$504变量长度为1 Byte类型
define $504 1
//$505变量长度为2 Integer类型
define $505 2
//$507变量长度为4 Long类型
define $507 4

//$511变量长度为8 POINTAPI类型
define $507 8

支持强制转换 byte integer long (强制转换括号里是定义这三种好 还是 直接定义数字好?)


//强制转换byte
Print (byte)123

//强制转换 Integer
Print (int)32767

//强制转换 long
Print (long)256

增加标签跳转(做循环)

做了个 循环100W次字符串相加测试  我机器是240+ 不到 250毫秒(比Vb慢3倍 )
Function TestFor
$0 = 1
$4 = 1
%0 = "Hello,"
%4 = "World!"
Loop:
// Print  [$0]
$0 = $0 + 1

%8 = %0 & %4
!100 = $0 <= 1000000
if !100 Then
Goto Loop
end if
Return %8
End Function

源码 。。  貌似没喜欢的  没支持的呢 - -!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

点评

为什么字符串是%,数值反而是$?和VB6正好反过来  发表于 2014-2-16 14:13
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-16 14:49:34 | 显示全部楼层
@acme_pjz   可以反过来啊!把编译器里两个关键字改过来就行了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-2-16 22:17:37 | 显示全部楼层
根据 @acme_pjz 建议 把变量反过来了  和VB一样

增加 字符串操作
取字符串长度 StrLen
取字符串左边 StrLeft
取字符串右边 StrRight
取字符串中间 StrMid
检索字符串  StrIn
支持字符串判断




Source Code

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

点评

有位同学说 Xp Sp3 打开测试.exe 接着关闭 进程会滞留 有没有碰上的?  发表于 2014-2-16 23:35

评分

参与人数 1威望 +7 人气 +1 收起 理由
zzyong00 + 7 + 1 很给力

查看全部评分

回复 支持 反对

使用道具 举报

发表于 2014-2-16 23:26:21 | 显示全部楼层
回复看看...........
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

文字版|手机版|小黑屋|VBGood  

GMT+8, 2022-5-29 03:14

VB爱好者乐园(VBGood)
快速回复 返回顶部 返回列表