当前位置:首页 » 编程软件 » 如何把文件编译成pe可执行文件

如何把文件编译成pe可执行文件

发布时间: 2023-05-21 13:36:26

1. 可执行文件的开发过程

在DOS下,生成一个可执行文件的步骤比较简单,用编译器将源程序编译为obj文件,再用链接器将obj文件链接成exe文件,不同语言的开发过程都差不多。
DOS可执行文件中的内容是由源程序中所写的代码和数据定义转换而来的。惟一的例外是带覆盖部分(Overlay)的exe文件,它在基本的exe文件后附加了一些自定义的数据,其中可执行部分的长度由文件头偏移0002h和0004h中的长度给出,该长度之后到文件实际长度这部分就是Overlay部分。这样,即使一个带覆盖的exe文件大小远远超过640 KB,在DOS下也能运行,因为操作系统只装入真正的可执行部分,然后由程序自己去读取覆盖部分的数据。一些打包软件生成的奇大无比的自解压包就采用这种结构,可执行部分是解包代码,覆盖部分是被压缩的数据。DOS对可执行文件覆盖碰配部分的数据格式并没有规定,它是程序员按自己的方式组织的。如果程序员愿意,也可以把这些数据单独放在另外一个文件中。
Win32可执行文件叫做PE文件。PE文件的基本结构和DOS可执行文件有很大的不同。它把程序中的不同部分分成各种节区(Section),其中可以有一个节区是放置各种资源的,如菜单、对话框、位图、光标、图标和声音等。虽然可以把资源部分理解成类似DOS可执行文件中的“覆盖”部分,但由于资源是Win32可执行文件的标准组成部分,而且是非常重要的组成部分,它的格式是固定的。所以与DOS软件的开发过程相比,Win32软件的开发中多了一个创建资源文件的步骤。
以使用MASM32软件包为例,在用Win32汇编开发软件的流程中,程序员要做的工作分创建代码和创建资源两部分,如图2.1所示。
代码部分的开发工作与DOS下写代码的步骤是一样的。程序员用文本编辑器书写汇编源代码(*.asm文件)。与C源代码类似,asm文件中也可以用include语句包含数据定义和函数声明的头文件,Win32汇编的头文件一般用inc作扩展名。大部分的include文件是编译器软件包附带提供的,如MASM32软件包附带的Windows.inc文件定义了Win32 API中很多参数和数据结构,其他的inc文件则是不同DLL中的Win32 API函数声明。最后,asm文件经汇编编译器编译成以obj为扩展名的目标文件。
资源文件中可以包括对话框、快捷键、菜单、字符串、版本信息和一些图形资源等内容。资源文件的源文件是一种类似“脚本”的文本文件,它的扩展名一般为rc,其中用不同的语法定义了不同类型的资源,资源脚本文件最后由资源编译器编译成资源文件*.res。资源脚本文件同样用到很多预定义值,所以软件包中一般也包括资源头文件供源文件来导入。MASM32软件包中的资源头文件是Resource.h。
在资源文件中,不同类型资源的记录方式是不同的。对话框资源只记录定义值,如对话框的大小、位置等,并非真正存储对话框最后显示在屏幕上的像素。这宽吵扒些大小、位置等信息最后由Windows解释后才在屏幕上被绘画成像素;菜单、字符串、快捷键等由文本构成;图形资源则真正由像素组成,它们在资源脚本中被定义为一个文件名,由资源编译器从磁盘文件导入。Windows在资源慎昌中支持的图形文件有bmp位图文件、cur光标文件和ico图标文件,这些图形文件可以用其他图形处理软件生成。另外,wav声音文件也可以用在资源中。创建资源的方法在第5章中有详细的描述。
编译好目标文件*.obj和资源文件*.res后,最后一步是用链接器将它们链接成可执行文件。链接的时候要用到函数库。在DOS环境下编程的时候,使用的函数库是静态库。静态库是一些已经编译好的代码模块。当用户在源程序中用到某个函数的时候,链接器从库文件中将这个函数的二进制代码取出,与obj文件合在一起生成最终的exe文件。但在Win32环境下,大部分的公用函数封装在DLL文件中,以动态链接的方式供用户程序调用。这时候库文件中只需要包含函数在DLL中的位置信息,不再需要有二进制代码部分。所以链接的时候也只是把库文件中的位置信息取出放入最后的可执行文件中。Win32中这种只包含位置信息的库文件称为导入库。

2. c语言如何把c程序编译成可执行的exe文件

1、编写一段简单的代码,如下图所示,编辑一段简单的输出语句。

3. 怎么制作可执行文件

一、将图片文件制作成可执行文件

将图片文件制作成可执行文件,我们要用到“PicturesToExe”这个软件。它上手极为容易,可支持将包括BMP、JPG、GIF等格式在内的图片单个或批量地制作成可执行文件。

[点击下载PicturesToExe]

安装完毕后,运行“PicturesToExe”,弹出操作界面。该界面的上方为硬盘选择区,你可在此选择图片文件所在的硬盘。进入图片所在的目录,在左边的窗口中即可看到图片列表。

双击你要制作的图片文件,右边的预览区域就会显示该图片,同时在预览区域下方我们可对该文件添加注释和背景音乐。

要制作的图片全部选定后,点击左边的“创建”按钮,弹出窗口,输入文件名并选定存放目录后,点击“保存”即可生成一个.exe的可执行文件。双击生成的文件,就可以无须借助于其看图软件而看到图片了。

友情提示:PicturesToExe在未注册时使用不能制作幻灯片,而且每个可执行文件只允许调用10幅图片来制作。

二、将压缩文件制作成自解压文件

自解压文件,顾名思义就是压缩文件自身可进行解压缩,而不需借助其他软件。我们最常用的着名压缩软件WinZip就能生成自解压文件,不过WinZip的版本最好在8.0以上。

运行资源管理器,找到需要自解压的压缩文件,在压缩文件上点击右键,选择快捷菜单上的“Create Self-Extractor(.EXE)”命令,弹出“WinZip Self-Extractor Personal Edition”窗口,在Default“Unzip To”Folder输入框中输入解压缩后默认的存放路径,其他选项均保持默认,宽或态再点击“OK”即可生成.exe文件。

现在我们可以将这个EXE自解压文件复制到任意一台没有安装WinZip的电脑里,双击该文件,即出现“WinZip Self-Extractor”窗口,直接点击上面的“Unzip”,默认的存放目录中就会出现我们所需的文件了。

三、将HTML文件或文本文件制作成可执行文件

电子文档处理器是一款集文档批量处理、批量格式转换于一身的优秀国产软件。下载并安装完毕后运行它,在操作界面选择“文本转换器”,选择要转换的小说所在目录,然后点击右边的Htm2Chm按钮,软件就会自动把用户指定目录下的网页文件转换生成.chm可执行文件。如要转换文本文件,点击右边的Txt2Chm按钮即可。

现在你转换源文件所在的目录里你就会看到新生成的.chm电子书,双击它就可以开始阅读了。

友情提示:当用户在进行文件操作时,电子文档处理器还会帮助用户快速制作全部或部分文件的索引、目录,大大加快了浏览及查找速度。

四、将mp3文件制作成可执行文件

虽然现在各种各样的音频格式层出不穷,但MP3格式还是团含占了多数,如果.mp3文件可以独立播放,我们就能够与电脑中没有安装播放软件的朋友一起聆听天籁之音了。此时我们就要用到“MP3 to EXE”这个软件将MP3文件制作成可执行文件。

安装结束后运行该软件,在操作界面的右边选择MP3源文件并选定存放目录,然后点击“创造.exe文件”就一切OK了。

下方的“批量转换”按钮还可以将大量的MP3文件一次性转换完毕。另外,如果你要把生成的可执行文件拷在软盘中带走,请点击“目标文件大小”标签慎源进行切割分离。

至此,制作结束。双击刚生成的MP3可执行文件,闭上眼,好好欣赏美妙动听的音乐吧!

4. 如何将程序生成可执行文件(exe)

以VB为例:

  1. 简单的程序,就只要在"文件"菜单下的"生成余世",生成的EXE文件和你要用的数据库和其他外部文件一起移植到其他电脑上,就可以了。

  2. 复杂的程序,建议用"打包",打包完以后,在其他电脑上安装以后再用.打包方法--------打开菜单栏“外接程序”——“外接程序管理器”,选择“打包和展槐纳开向导”,选择“加载/卸载”,确定。在“外接程序管理器”里找到“打包和展开向导”,打开“打包和铅毁没展开向导”,再一步步进行打包就可以生成一个安装程序。

5. 怎么把C编译出来的EXE弄成PE文件

首先,c编译出来的exe就是不一定就是PE文件。
当然有前提:
在WINDOWS操作系统下的编译器才行!在dos系统下编译出的不是PE文件,WIN-TC我没用过不过按照你的描述这个东西应该是DOS下的一款软件,加了win外壳,编译出的exe文件是DOS可执行文件,不是PE格式。
可以使用其它编译器试试,比如GCC,vc++等编译出pe文件来。

6. 如何把一个PC文件编译成可执行文件

可以引出为”可执行jar“(项目必须有mian方法),然后双击运行即可。 第一步:在项目上右击,选择”Export“,之后找到”Runnable Jar file“。 第二步:在”Launch“下拉选中选择”main“方法入口类,然后选择”Browse“后,输入”jar“名称,点击”Finsh“即...

热点内容
ims医药数据库 发布:2025-07-18 05:33:52 浏览:812
魅族3脚本精灵 发布:2025-07-18 05:27:39 浏览:807
解压采耳师 发布:2025-07-18 05:23:20 浏览:511
ftp二进制方式 发布:2025-07-18 05:21:04 浏览:751
易观数据库 发布:2025-07-18 05:19:31 浏览:995
linux的c语言编译 发布:2025-07-18 05:16:22 浏览:602
为何编译硬件驱动 发布:2025-07-18 05:15:02 浏览:489
android适配原理 发布:2025-07-18 05:11:59 浏览:551
网络存储服务器如何搭建 发布:2025-07-18 04:47:23 浏览:549
手机上玩电脑我的世界服务器 发布:2025-07-18 04:11:59 浏览:599