VBGood网站全文搜索 Google

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

VB爱好者乐园(VBGood)

 找回密码
 立即注册
搜索
查看: 968|回复: 1

[原创] vb自动编绎程序,研究VB6编绎原理,LINK.EXE,C2.EXE

[复制链接]
发表于 2017-1-31 14:35:01 | 显示全部楼层 |阅读模式
研究VB6编绎原理,LINK.EXE,C2.EXE
想写一个自动编绎VB工程的程序,VB6是调用link.exe和C2.exe并且写出一堆临时文件,其中还包括生成很多*.OBJ文件
其实如果VB中的一些模块或类等,没有修改的情况下,*.OBJ应该是相同的不需要每次重新生成。
对于需要经常改动个别文件的情况下,最好是*.OBJ能够保留不被删除,这样编绎更快。

并且如果这些文件能够直接保存到内存中,那编绎速度估计会快几倍。
我的想法是HOOKlink.exe和C2.EXE,然后在读写文件时自动存到内存中,需要读时就读取对应内存区,有点类似RAMDISK,但是这个只涉及到文件名对应的存取,不涉及硬件模拟驱动之类。

不知还有什么方式可以做的更好?
VB.NET或VS.NET是可以内存中编绎,并且直接运行,也可以生成EXE或DLL,但是他的编绎好像也是需要生成大量临时文件。
微软的.NET越做越大,安装一下要几十上百G了,可怕。功能却没见增加多少,真希望微软能开发一个像是易语言一样的迷你开发工具。
发表于 2017-2-3 11:16:18 | 显示全部楼层
想法很好,实现起来有一些难。目前的方法都不是脱离VB6.EXE的。是用 VB6 /RUN 加中间程序。网络上有很多类似的程序源码。
编译流程:VB6.EXE自身做一次编译生成IL中间文件和窗体的OBJ文件,再由C2.EXE生成模块和过程的OBJ文件,之后LINK.EXE链接成应用程序。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2017-10-23 17:31

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