VS使用WinRAR软件以命令行方式打包软件至一个exe

由于项目需要,需要将一个绿色版软件(即无需在C盘写入文件)发给客户使用,要求是只有一个exe文件,双击即可执行。?

网上说WinRAR软件创建自解压文件可以实现,链接http://blog.csdn.net/harvic880925/article/details/27675073

该方法是手动版的,项目中常常需要以命令行的方式执行。我查了一下WinRAR自带的帮助,实现了该方式。

原理:将软件中的文件打包至一个exe文件,双击该exe,首先执行的是解压操作,将解压后的文件放到临时文件夹,然后自动执行临时文件夹中的exe文件。因为是放到了临时文件夹,给用户的感觉就是只有一个exe文件。?

实现:

1. 打开C:\Program Files(x86)\WinRAR文件夹,将其中的Default.SFX?、WinRAR.exe和Rar.exe复制到你的工程目录中;??

2. 将你的绿色软件需要的文件放入soft文件夹下;?

3. 创建note.txt注释文件,编辑如下,含义分别为临时文件夹、静默模式、覆盖写入和启动后自动执行的文件:?

TempMode

Silent=1

Overwrite=1?

Setup=soft/soft.exe

4. 创建run.bat文件,编辑如下命令:??

WinRAR.exe a soft.exe ./soft??

rar.exe c -znote.txt soft.exe?

至此,双击soft.exe即可完成客户需求。命令行的方式还可以给生成的exe添加自解压图标,命令为-iicon,有兴趣的可以自行到WinRAR的中文帮助中查找和使用。?

缺点:?双击操作执行的是一个解压操作,大的软件解压是需要时间的,所以对于大软件来说,封装成一个exe文件可能意义不大。但是平时见到的一般也是小软件做成一个exe的形式。

时间: 2024-10-12 08:44:06

VS使用WinRAR软件以命令行方式打包软件至一个exe的相关文章

Ubuntu下命令行方式对PDF文件进行缩放、合并、拆分

安装软件: sudo aptitude install ghostscript 然后执行命令: gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -sOutputFile=new_file.pdf original_file.pdf PDFSETTINGS参数说明: /screen - 最低精度方式输出,因为屏幕展示所需的精度很低/ebook - 中等精度输出/printer

Android环境搭建与通过命令行方式创建Android应用

  实验 通过命令行方式创建Android应用 本文主要是先搭建Android环境,再通过命令行方式创建一个Android应用:使用Ant进行编译和打包:使用adb进行部署. (本文主要是为了防止以后再次搭建Android环境的时候忘记步骤...) 实验步骤: 建立实验环境 ①下载ANT 首先从 http://ant.apache.org/bindownload.cgi 下载Apache Ant 如下图进入该页面 访问http://ant.apache.org/bindownload.cgi,选

使用cmd命令行方式登录ftp上传下载数据

部分用户在使用ftp工具登录空间上传下载过程中经常会遇到各种问题,如主动模式,被动模式,以及其他导致无法登陆ftp .上传数据.下载数据的问题,这时候不妨使用一下命令行方式.命令行下可以避免很多由于ftp工具配置导致的问题,而且这种方式下下载数据的速率明显比使用ftp工具更快.下面就来看一下如何使用ftp 命令进行简单的上传下载数据.1.登录ftp在“开始”->”运行”中输入“cmd”,进入cmd命令行模式,接下来输入:ftp 118.193.22.151输入自己的网站ip地址,接下来会提示输入

解决cordova命令行方式下build或者run的时候报错问题

phonegap3.0之后就将项目的生成方式做了很大的更改,原来是在eclipse里面修改生成并编译运行,但是3.0之后它的目录结构发生了很大变化,只修改主目录下面的index.html如果不build的话有时候是不起作用的,因为它的platform文件夹中还有各个平台的目录.比如安卓和IOS,在主目录www下面修改index.html之后必须要build才能生效,否则很多时候你会发现修改了不起作用,这是因为在assets目录下还有个www文件夹,真正运行的是这个文件夹下面的index.html

命令行方式使用abator.jar生成ibatis相关代码和sql语句xml文件

最近接手一个老项目,使用的是数据库是sql server 2008,框架是springmvc + spring + ibatis,老项目是使用abator插件生成的相关代码,现在需要增加新功能,要添加几张新表,可以目前网上下载的abator插件,在新版的eclippse EE中UI根本打不开,只有使用命令行方式来生成相关代码,将下载的abator插件解压出来,提取其中的abator.jar文件即可,其他的文件不需要.abator的配置文件如下: <?xml version="1.0&quo

go调用其它C库,若采用命令行方式,不支持重定向的输出解决;smp协议未打开,发送信息到对方,没人响应

很多时候要学会站在巨人的肩膀上,该用别人 现有的东东一定要用,只要是开源合法的 go调用其它C库,一般两种方式,1,查看是否有接口,采用cgo方式编写:2.采用命令行直接执行,前提必须被调用的C库已经安装运行在该机器上 为了高效处理gif文件,采用gifsicle工具 http://download.csdn.net/detail/u010026901/7711469 重定向符合 > 在代码中会出错,所以在代码中实现重定向代替命令行重定向 package main import ( // "

RHEL7、CentOS7提供三种命令行方式方式来设置和显示日期

RHEL7.CentOS7提供三种命令行方式方式来设置和显示日期.时间.timedatectl是在RHEL7及CentOS7中新增的systemd的一部分,date是传统的日期时间设置命令,hwclock单元访问的是硬件时钟. 一.timedatectl [root@Geeklp-Administrator ~]# timedatectl Local time: 六 2017-12-16 19:49:53 CST Universal time: 六 2017-12-16 11:49:53 UTC

iOS 用命令行进行打包

通过命令行编译打包 第一步,打开终端,输入: cd 把项目文件拖到这里(注意:cd后面要有空格,然后再把项目文件拖进来) 回车 第二步,clean工程(默认release版本),在终端输入: xcodebuild clean 回车 第三步,编译(工作空间) ,在终端输入: xcodebuild -workspace 项目名称.xcworkspace -scheme 项目名称 回车(这里可能要等两分钟左右,因为编译需要时间) 第四步,打开Finder,按common + shift + g ,输入

使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0

使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0 网上的 MapReduce WordCount 教程对于如何编译 WordCount.java 几乎是一笔带过… 而有写到的,大多又是 0.20 等旧版本版本的做法,即 javac -classpath /usr/local/hadoop/hadoop-1.0.1/hadoop-core-1.0.1.jar WordCount.java,但较新的 2.X 版本中,已经没有 hadoop-core*.jar 这个文件,因此