有难度的问题—请问如何从VB.net中动态生成exe文件

sagasaga 2004-07-25 12:31:53
各位好,我最近正在开发一个项目,但遇到一个难点无法解决,已经几日了,希望能得到各位的帮助。
我的目的是要从一个VB.net应用程序(假定为A.exe)中动态的生成另一个exe文件(假定为B.exe),我已经搜索过网络,看到在VB5/6下有这样的解决方法:
http://www.china-askpro.com/msg26/qa42.shtml
但我发现我无法在VB.net下按这种方法成功。我可以把事先做好的B.exe作为资源文件嵌入到A.exe中,并在A.exe运行时把B.exe写到磁盘上,但当我的B.exe试图读取自身结尾处的数据时,总是给出“另一个进程正在使用该文件”这样一个错误,看起来似乎是当B.exe运行时无法同时读取自身结尾处的数据。
我现在需要实现的不仅是要能从A.exe中动态的生成B.exe,而且B.exe中的某些地方还需要根据用户在A.exe中的输入进行定制,而且B.exe中还要包含一个很大的资源文件(这个资源文件也是用户在A.exe中指定的)。
请高手给我指点,尤其是怎样才能把一个资源文件嵌入到一个已经被编译的exe文件中(这里指B.exe)。

...全文
106 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
水如烟 2004-07-25
  • 打赏
  • 举报
回复
这个我没接触过,这种方法倒是经常听说的
特别是那些所谓的免费软件,总捆绑着另一个可执行文件
另外,我记得有一篇文章,就是怎么杀死自己的程序,不过忘了在哪看到的。
dxj1234 2004-07-25
  • 打赏
  • 举报
回复
我以前这样做过,编写b.exe时记下其编译后的长度length(当然这个长度也可以通过读取exe文件头获得,此法灵活些,但麻烦),在b.exe中读取自身length字节后的内容(这个内容当然是后期追加上去的,比如copy命令连接两个文件的方式),并作为一般数据使用。打开文件是二进制方式的,不会出错啊,大不了加个只读打开属性啊。

a.exe动态修改的就是这部分内容啦。
水如烟 2004-07-25
  • 打赏
  • 举报
回复
sagasaga 2004-07-25
  • 打赏
  • 举报
回复
这个问题比较难,我愿意给帮我解答出这个问题的朋友100元作为酬谢。尽管不多,但也是一份心意。我的邮箱是:neosaga@126.com
摘要:VB/C#.Net实体代码生成工具(EntitysCodeGenerate)【ECG】是一款专门为.Net数据库程序开发量身定做的(ORM框架)代码生成工具,所生成的程序代码基于面向对象、分层架构、ORM及反射+工厂设计模式等。支持.Net1.1及以上版本,可用于Oracle、SqlServer、Sybase、DB2、MySQL、Access、SQLite、PostgreSQL、DM(达梦)、PowerDesigner文件、Informix、Firebird、MaxDB、Excel等和OleDb、ODBC连接的数据库并可自定义,详见文档及安装文件的示例和工具的帮助文档。 关键字: VB/C#.Net实体代码生成工具 实体代码生成工具 EntitysCodeGenerate 预期读者: 软件开发及相关人员 难度等级: 当前版本: 4.3 目 录 1 引言 3 2 内容 4 2.1 ORM框架的实现:VB/C#.Net实体代码生成工具(EntitysCodeGenerate) 4 2.2 在开发的实际应用 5 2.2.1 单个实体对象的数据库操作 6 1、获取一个实体对象信息 6 2、插入一个实体对象信息 6 3、更新一个实体对象信息 6 4、保存一个实体对象信息 6 5、删除一个实体对象信息 7 6、取得实体映射表数值字段的最大值+1 7 2.2.2 多个实体对象的数据库操作 7 1、实体集对象的使用 7 2、结合事务处理 7 2.2.3 数据查询及通用DML操作 9 1、 常用实体对象查询 9 2、 ORM结构化查询 9 (1)、Select查询 10 (2)、From连接查询 10 (3)、Where语句的Condition条件 11 (4)、Order By排序功能 11 (5)、Group By分组条件及排序 12 (6)、结合事务处理的功能 14 3、Delete删除 15 4、Update更新 15 5、Insert插入 16 2.2.4 DbCore+SQL/存储过程 17 1、DbCore+SQL 17 2、DbCore+存储过程 19 2.2.5 Extend辅助扩展功能 20 1、TableHelp辅助扩展 20 2、CommonHelp常用方法扩展 22 2.2.6 ORM的分析及与Xml的交互 22 1、ORM的分析 22 2、与XML的交互 23 3 结束语 23 4 相关下载地址 24 http://www.skycn.com/soft/53715.html http://download.enet.com.cn/html/030212009031901.html http://www.newhua.com/soft/98941.htm http://www.duote.com/soft/32643.html http://www.crsky.com/soft/25626.html http://download.csdn.net/source/3030634 http://qun.qq.com/air/#60873348/share http://blog.csdn.net/chutao http://lxchutao.blog.163.com http://hi.baidu.com/lxchutao http://download.enet.com.cn/eblog/blog/htm/uid_21280.html
前 言 visual basic继承了basic语言易学易用的特点,特别适合于初学者学习windows系统编程。随着21世纪信息社会的到来,计算机在人们的工作和生活的深入,要求我们越来越多地与计算机打交道,为了使用户在繁忙的日程工作得到放松,于是出现了各种各样的休闲软件,如聊天工具,游戏等等。于是我们小组着手设计开始一个这样的游戏软件。通过这学期来Visual Basic的学习,我初步掌握了Visual Basic语言的最基本的知识,于是在化希耀张兵等老师的指导下动手用Visual Basic编写俄罗斯方块游戏。 无可争议,《俄罗斯方块》是有史以来最伟大的游戏之一。它是永恒的娱乐经典,但它实际上又和那些传统的经典娱乐方式不同,因为它的本质是电子化的,所以它的确属于现代产物。《俄罗斯方块》举世闻名的游戏性,在该游戏新鲜出炉时就显得非常直观。某些与坠落的玩具碎片和它们的形状有关的东西,使得哪怕新手也会很自然地企图把它们排列起来,并加以适当组合,就好似《俄罗斯方块》触动了我们某些内在的感官,使得哪怕是我们当最杂乱无章的人也要把事情整理妥当。 在曾经发布过的所有游戏,《俄罗斯方块》还被认为是仅有的一个能够真正吸引广泛人群的作品。某些批评家也许会声称,《俄罗斯方块》要比过去二十年间出现的任何东西都要浪费人们的时间。至于我们,则要欣然提名它为GameSpot评选出的历史上最伟大游戏之一。 为了怀念经典,也为了能够给大多的计算机用户在工作之余找到一个休闲、娱乐的一个方式,我们小组开始着手用VB语言开发一个经典的俄罗斯方块游戏。 工程概况 1.1 项目名称 俄罗斯方块游戏 1.2 设计平台 VB 全称Visual Basic,它是以Basic语言作为其基本语言的一种可视化编程工具。 Vb是microsoft公司于1991年退出的windows应用程序开发工具visual意思是“可视化的”。在它刚推出来时,自身还存在一些缺陷,功能也相对少一些。但是经过多年的开发研究。最近microsoft公司又推出了VB6.0版本 VB6.0运行环境:硬件,要求486以上的处理器、16MB以上内存,50MB 以上的硬盘,cd-rom驱动器,鼠标。软件:要求windows 95以上版本。 1.3程序设计思想 游戏是用来给大家娱乐的,所以要能在使用的过程给大家带来快乐,消除大家的疲劳,所以我们在游戏添加了漂亮的场景和动听的音乐,设置了过关升级的功能,激发大家的娱乐激情。 从游戏的基本玩法出发,主要就是俄罗斯方块的形状和旋转,我们在设计在一个图片框构造了一个4*4的网状小块,由这些小块组合成新的形状,每四个小块连接在一起就可以构造出一种造型,因此我们总共设计了7造型,每种造型又可以通过旋转而变化出2到4种形状,利用随机函数在一个预览窗体提前展示形状供用户参考,然后将展示的形状复制到游戏窗体进行摆放,在游戏窗体用户就可以使用键盘的方向键来控制方块的运动,然后利用递归语句对每一行进行判断,如果有某行的方块是满的,则消除这行的方块,并且使上面的方块自由下落,其,方块向下的速度是有时钟控件控制的,在游戏,用户也可以使用向下键加快下落速度,定义一个变量,对消除的函数进行记录,最后就可以得出用户的分数,用if 语句对分数判断,达到一定的积分就可以升级到下一个档次。 俄罗斯方块游戏设计的主要步骤为以下10个方面: (1)游戏界面的设计。 (2)俄罗斯方块的造型。 (3)俄罗斯方块的旋转。 (4)俄罗斯方块的运动情况(包括向左,向右和向下)。 (5)俄罗斯方块的自动消行功能。 (6)游戏级别的自由选择。 (7)游戏速度的自由选择。 (8)游戏得分的计算。 (9)游戏菜单选项的设计及功能实现。 (10)游戏的背景音乐。 1.4运用的控件和主要对象 我们在设计过程主要用到的控件有:command控件,image控件,picture控件,label控件,timer控件,text控件,windows media player控件等等。 1.5主要实现的功能 我们开发的俄罗斯方块游戏,主要实现了以下几种功能: 1.可以灵活控制方块在图形框运动。 2.游戏过程方块可以自由旋转。 3.当某一行的方块排列满时,将自动将这一行方块消除,然后将上面所有方块向下移动,可以支持连续消行。 4.游戏前可以选择游戏的速度和游戏的等级,游戏速度既为方块下落速度,游戏等级为初始游戏时在基层随机生成一定行数的无规律方块,生成的行数由你来选择,每行至少产生5个以上的无规律方块,这样增加了游戏难度,对于游戏高手来说,无疑不是一个新的挑战。 5.游戏的得分支持积分,并且按照公式: 得分 = 原来分数+ 100 * (2 ^ 同时消除的行数-1) 这样,你同一时间消除
**VB考试分析评价系统** **资源介绍:** 本资源提供了一个完整的VB考试分析评价系统,涵盖了源代码、系统、开题报告、外文翻译、英文翻译以及答辩PPT等多个方面。该系统旨在通过VB编程实现对考试数据的自动化分析和评价,提高教师工作效率,同时为考生提供详细的反馈。 **源代码:** 源代码基于VB.NET编写,结构清晰,注释详细,便于理解和二次开发。代码包含了数据导入、处理、存储和可视化等核心功能模块,可满足各类考试数据分析需求。 **系统:** 系统界面简洁友好,操作简便。用户只需导入考试数据,系统便会自动进行分析并生成评价报告。报告内容包括考试成绩分布、难度系数、区分度等关键指标,以及针对每位考生的个性化学习建议。 **开题报告与外文翻译:** 开题报告详细介绍了项目的背景、目的、意义和研究方法,为后续开发提供了清晰的指导。同时,我们还提供了外文翻译的版本,方便跨国交流和使用。 **英文翻译与答辩PPT:** 为了方便国际用户和学术交流,我们提供了系统的英文翻译版本。此外,答辩PPT也经过了精心制作,详细介绍了项目的开发过程、技术难点和创新点,适用于各类学术报告和项目展示。 本资源不仅适合VB编程学习者进行实践操作,也适合教育工作者和学生用于考试分析和教学改进。同时,其高度可定制性和扩展性也使其在相关领域具有广泛的应用前景。

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧