精华内容
下载资源
问答
  • 如何压缩exe文件
    千次阅读
    2021-12-17 23:08:35

    压缩文件

    @echo off
    
    "C:\Program Files\WinRAR\WinRAR.exe" a "C:\Users\Administrator\Desktop\bat\test.rar"  "C:\Users\Administrator\Desktop\bat\安装包"
    
    pause
    

    利用C:\Program Files\WinRAR\WinRAR.exe将桌面的bat\安装包文件夹压缩,但是这里存在一个问题,就是将压缩包解压后发现,里面的目录是\test\Users\Administrator\Desktop\bat\安装包

    这里写相对路径即可

    @echo off
    
    "C:\Program Files\WinRAR\WinRAR.exe" a "C:\Users\Administrator\Desktop\bat\test.rar"  "安装包"
    
    pause
    

    这里解压处理的目录就是\test\安装包

    解压文件

    @echo off
    
    "C:\Program Files\WinRAR\WinRAR.exe" x "C:\Users\Administrator\Desktop\bat\test.rar"
    
    pause
    

    x 表示 用绝对路径解压文件

    e 表示 解压压缩文件到当前目录

    更多相关内容
  • 一个可物理压缩EXE文件的利器,压缩后可执行文件变小30-80%,并且可直接执行。
  • 免费解压缩文件.exe

    2019-05-17 15:47:42
    1、免费的,去广告的,好用的解压软件。2、占用内存小。
  • UPX 压缩加密 EXE文件

    2016-10-09 14:53:03
    UPX 用于压缩 加密 EXE文件
  • 讲解如何将绿色EXE的附带程序打包,可方便流通
  • 内容索引:VB源码,文件操作,压缩文件 解压缩本程序目录下文件111.rar到目录new下,需要调用winrar.exe文件的路径,压缩格式可以是rar,也可以是cab.
  • Python调用winrar.exe进行文件压缩

    千次阅读 2020-05-18 17:26:52
    Python语言中有一个zipfile库,可以利用zip进行压缩解压。对于rar格式,我们可以通过`pip3 install rarfile` 安装...但是问题是没有办法实现rar文件压缩。本文介绍了一种通过利用winrar.exe来实现Python对rar的压缩

    前言

    Python语言中有一个zipfile库,可以利用zip进行压缩解压。我们知道,通常 Rar 具有更高的压缩率。在Python中,对于rar格式,我们可以通过pip3 install rarfile 安装rarfile库来实现。但是问题是没有办法实现rar文件的压缩。本文介绍了一种通过利用winrar.exe来实现Python对rar的压缩。

    简介

    在WinRar目录下,有一个 Rar.exe 文件,这个文件是数据压缩解压的核心工具,通过这个文件可以使用 rar 格式的压缩和解压。这是一个DOS程序,我们可以在命令行中,查看此工具的帮助信息,如下所示:

    G:\Research\Miscellaneous>rar
    
    RAR 3.90   Copyright (c) 1993-2009 Alexander Roshal   16 Aug 2009
    Shareware version         Type RAR -? for help
    
    Usage:     rar <command> -<switch 1> -<switch N> <archive> <files...>
                   <@listfiles...> <path_to_extract\>
    
    <Commands>
      a             Add files to archive
      c             Add archive comment
      cf            Add files comment
      ch            Change archive parameters
      cw            Write archive comment to file
      d             Delete files from archive
      e             Extract files to current directory
      f             Freshen files in archive
      i[par]=<str>  Find string in archives
      k             Lock archive
      l[t,b]        List archive [technical, bare]
      m[f]          Move to archive [files only]
      p             Print file to stdout
      r             Repair archive
      rc            Reconstruct missing volumes
      rn            Rename archived files
      rr[N]         Add data recovery record
      rv[N]         Create recovery volumes
      s[name|-]     Convert archive to or from SFX
      t             Test archive files
      u             Update files in archive
      v[t,b]        Verbosely list archive [technical,bare]
      x             Extract files with full path
    
    <Switches>
      -             Stop switches scanning
      ac            Clear Archive attribute after compression or extraction
      ad            Append archive name to destination path
      ag[format]    Generate archive name using the current date
      ai            Ignore file attributes
      ao            Add files with Archive attribute set
      ap<path>      Set path inside archive
      as            Synchronize archive contents
      av            Put authenticity verification (registered versions only)
      av-           Disable authenticity verification check
      c-            Disable comments show
      cfg-          Disable read configuration
      cl            Convert names to lower case
      cu            Convert names to upper case
      df            Delete files after archiving
      dh            Open shared files
      dr            Delete files to Recycle Bin
      ds            Disable name sort for solid archive
      dw            Wipe files after archiving
      e[+]<attr>    Set file exclude and include attributes
      ed            Do not add empty directories
      en            Do not put 'end of archive' block
      ep            Exclude paths from names
      ep1           Exclude base directory from names
      ep2           Expand paths to full
      ep3           Expand paths to full including the drive letter
      f             Freshen files
      hp[password]  Encrypt both file data and headers
      id[c,d,p,q]   Disable messages
      ieml[addr]    Send archive by email
      ierr          Send all messages to stderr
      ilog[name]    Log errors to file (registered versions only)
      inul          Disable all messages
      ioff          Turn PC off after completing an operation
      isnd          Enable sound
      k             Lock archive
      kb            Keep broken extracted files
      m<0..5>       Set compression level (0-store...3-default...5-maximal)
      mc<par>       Set advanced compression parameters
      md<size>      Dictionary size in KB (64,128,256,512,1024,2048,4096 or A-G)
      ms[ext;ext]   Specify file types to store
      mt<threads>   Set the number of threads
      n<file>       Include only specified file
      n@            Read file names to include from stdin
      n@<list>      Include files listed in specified list file
      o[+|-]        Set the overwrite mode
      oc            Set NTFS Compressed attribute
      or            Rename files automatically
      os            Save NTFS streams
      ow            Save or restore file owner and group
      p[password]   Set password
      p-            Do not query password
      r             Recurse subdirectories
      r-            Disable recursion
      r0            Recurse subdirectories for wildcard names only
      ri<P>[:<S>]   Set priority (0-default,1-min..15-max) and sleep time in ms
      rr[N]         Add data recovery record
      rv[N]         Create recovery volumes
      s[<N>,v[-],e] Create solid archive
      s-            Disable solid archiving
      sc<chr>[obj]  Specify the character set
      sfx[name]     Create SFX archive
      si[name]      Read data from standard input (stdin)
      sl<size>      Process files with size less than specified
      sm<size>      Process files with size more than specified
      t             Test files after archiving
      ta<date>      Process files modified after <date> in YYYYMMDDHHMMSS format
      tb<date>      Process files modified before <date> in YYYYMMDDHHMMSS format
      tk            Keep original archive time
      tl            Set archive time to latest file
      tn<time>      Process files newer than <time>
      to<time>      Process files older than <time>
      ts<m,c,a>[N]  Save or restore file time (modification, creation, access)
      u             Update files
      v             Create volumes with size autodetection or list all volumes
      v<size>[k,b]  Create volumes with size=<size>*1000 [*1024, *1]
      vd            Erase disk contents before creating volume
      ver[n]        File version control
      vn            Use the old style volume naming scheme
      vp            Pause before each volume
      w<path>       Assign work directory
      x<file>       Exclude specified file
      x@            Read file names to exclude from stdin
      x@<list>      Exclude files listed in specified list file
      y             Assume Yes on all queries
      z[file]       Read archive comment from file
    

    这个工具具体的使用方法有些复杂,所以本文只通过一个实例介绍如下压缩。

    压缩实例

    下面我们通过一个实例来进行 rar 的文件压缩实例。

    目录结构

    首先,我们使用几个文件和两个文件夹用于压缩,其结构如下所示:

    G:\Research\Miscellaneous>tree /f
    Folder PATH listing for volume 1T Raid1
    Volume serial number is 36A7-EE78
    G:.
    │  List of LaTeX symbols.png
    │  Rar.exe
    │  rar.py
    │
    ├─Data
    │      data.txt
    │
    └─res
           readme.docx
    

    执行代码

    然后,我们使用Python编写以下代码,然后保存为 rar.py

    #!/usr/bin/python
    import os, shutil, zipfile
    os.system("Rar.exe a data.rar * Data res")
    

    我们使用 os.system 调用 DOS 命令。在这条被调用的命令中,主要有以下内容:

    Rar.exe         # WinRar提供的DOS工具
    a               # 操作参数,指进行文件压缩操作  
    data.rar        # 输出的压缩包文件名称
    * Data res      # 待压缩内容列表,这里有三块内容,分别为:
                      *: 当前目录下所有文件
                      Data:Data 文件夹下的所有文件和文件夹
                      res: res 文件夹下的所有文件和文件夹
    

    运行结果

    现在,我们来看运行的结果。不过,在运行前要特别注意一点,程序执行的目录与路径一致。所以可以将此脚本放在相同目录下,或在脚本中使用 chdir 将执行路径换到相同路径下。最终执行结果如图所示:

    G:\Research\Miscellaneous>python rar.py
    
    RAR 3.90   Copyright (c) 1993-2009 Alexander Roshal   16 Aug 2009
    Shareware version         Type RAR -? for help
    
    Evaluation copy. Please register.
    
    Creating archive data.rar
    
    Adding    List of LaTeX symbols.png                                   OK
    Adding    Rar.exe                                                     OK
    Adding    rar.py                                                      OK
    Adding    Data\data.txt                                               OK
    Adding    res\readme.docx                                             OK
    Adding    Data                                                        OK
    Adding    res                                                         OK
    Done
    

    压缩包的内容如下:
    在这里插入图片描述

    小结

    通过几行简单的语句,我们就可以在Python中,利用WinRar自带的工具,实现将指定的内容添加至 rar 的数据包中,从而利用Rar格式更高的压缩效率。

    展开全文
  • Alternate EXE Packer 是一个易于使用的程序,旨在压缩 EXE 和 DLL 文件,以减少硬盘驱动器上的空间并使相关文件在运行时自动解压缩。已经压缩文件也可以使用该程序解压缩。存在 12 个不同的文件压缩级别。该程序...
  • zip.exe,unzip.exe压缩解压工具可以在windows下执行压缩、解压命令,可以写脚本来执行或者cmd命令来执行
  • ASPack可压缩Windows 32Bit EXE文件与DLL文件的压缩工具,能将大多数32Bit EXE文件及DLL文件平均压缩百分之叁十到四十的压缩率,帮你节省硬盘空间
  • phcomp.exe thinkpad bios fl1 fl2 可以对bios文件压缩和解压 以便修改烧录bios 挽救升级bios失败的电脑
  • ASPACK压缩exe工具

    2016-10-20 13:41:59
    非常好用的压缩exe dll文件;一直在用; 有破解方法; 现在写的程序编译出来的exe文件都比较大;
  • 除了支持zip、rar等常见的压缩格式之外,它还能够解压缩exe文件,这样一来,你就可以看到软件安装包中是什么样子了特点: 1、支持众多格式,包括ZIP, ZIPX, 7Z, RAR, ISO, MSI, VHD, GZIP, BZIP2,TAR, DMG, LZMA, ...
  • vc将多个文件捆绑成一个exe,双击exe会释放所有文件.相当于vc制作个自解压缩程序.zip
  • 360zip压缩文件包.exe

    2013-05-28 12:54:24
    挺好的,非常编辑方便,能打开各种文件,太棒可
  • 压缩png,jpg图片(当前版本1.0.3)文件目录 root -----根目录 | ---- app.exe -----主程序 | ---- vendor -----jpg依赖的压缩文件 | ---- src -----源码使用pkg对nodejs程序进行打包如何使用双击运行app.exe文件,...
  • UPX Shell是一款很有用的DLL及EXE格式程序压缩工具,它能够大幅压缩应用程序及动态库的体积,而不会造成功能上的损失,支持很多类型的文件,如WINDOWS程序及DOS应用程序。可设置压缩级别,支持多文件压缩,能直接...
  • 使用WinRar压缩工具,实现文件打包成自解压EXE应用程序格式,实现文件自动解压,或覆盖更新。

    如何使用winrar压缩工具实现:文件打包为自解压EXE类型

    **第一步:安装WinRAR压缩工具
    **第二步:**选择你想要直接双击就能自解压的文件,右键选择“添加到压缩文件(A)…”
    在这里插入图片描述
    **第三步:**输入打包后的EXE文件包的名称,勾选“创建自解压格式压缩文件(X)”,随后再切换到“高级”tab页。
    在这里插入图片描述
    进入“高级”tab页之后,先点击“自解压选项”,弹出高级自解压选项之后,点击“模式”,选择“全部隐藏”,全部隐藏的效果就是,在解压时不弹出解压提示和解压进度条的显示,静默解压。
    在这里插入图片描述
    最后一步:进入到“更新”tab,如果我们是要做文件的更新和替换,那么我们可以根据实际情况进行“覆盖模式”的选择,这里我是想直接进行文件覆盖替换,也就是如果原来路径下有这些文件,就把它们直接替换掉,不进行询问。
    在这里插入图片描述
    设置完了之后,记得对设置好的窗口点击确定,确定后自解压EXE文件包就打包成功啦。
    在这里插入图片描述
    双击就直接自动解压里面的文件了。

    展开全文
  • Py程序打包成exe文件很多同学都会,但是很多人打包完发现:一个简单的Py程序打包成exe文件之后编程几百兆了 Python如何打包成exe,以及如何打得足够小。 一、标准打包 目前比较常见的打包exe方法都是通过Pyinstaller...

    Py程序打包成exe文件很多同学都会,但是很多人打包完发现:一个简单的Py程序打包成exe文件之后编程几百兆了
    Python如何打包成exe,以及如何打得足够小。

    一、标准打包

    目前比较常见的打包exe方法都是通过Pyinstaller来实现的,本文也将使用这种常规方法。如果对这块已经很熟悉的小伙伴,可以直接下滑到本文下半部分。

    1、为什么要打包?
    众所周知,Python脚本不能在没有安装Python的机器上运行。

    那我们如果写了一个数据分析/自动化办公的小脚本,想分享给同事小姐姐使用,可她电脑又没有装Python。

    这个时候如果将脚本打包成exe文件,微信发送给她,即使她的电脑上没有安装Python解释器,这个exe程序也能在上面运行。岂不美哉?

    2、安装Pyinstaller
    首先我们要先安装Pyinstaller,直接在cmd使用pip命令

    pip install pyinstaller 
    

    如果网速太慢可以切换国内源来加速,本文其他部分直接使用国内源,不再重复注释。

    pip install -i https://pypi.douban.com/simple/ pyinstaller #豆瓣源
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller #清华源
    

    3、Pyinstaller打包步骤
    这里我们拿之前Python自动批量写Word日报的代码,作为案例来演示。将其中脚本py_word.py,待处理的表格文件workbook.xlsx,以及准备好的软件图标图片chengzi.ico放在了我电脑的F:\py_word目录下

    图片

    1、cmd切换到我们刚刚放文件的目录

    图片

    2、执行命令Pyinstaller -F -w -i chengzi.ico py_word.py,执行过程特别漫长,就没有录制动图。

    执行完毕会发现当前目录多了几个文件夹,打开其中名为dist的文件夹。

    图片

    已经生成了一个名为py_word的exe应用程序,并且图标也是我们设置的橙子图案,看来已经成功一半了。

    要不运行一下,试试能否正常生成word日报?

    在这里插入图片描述

    成功运行,可惜就是文件有点大(339M)

    4、Pyinstaller参数详解
    说回刚刚执行的命令

    Pyinstaller -F -w -i chengzi.ico py_word.py
    

    给大家解释一下其中Pyinstaller的参数,其中

    • -F 参数代表制作独立的可执行程序。

    • -w 是指程序启动的时候不会打开命令行。如果不加-w的参数,就会有黑洞洞的控制台窗口出来。比如在刚才的脚本里我加一行print(‘Hello World!’),那么就不要放-w参数了,不然运行会报错,毕竟Hello World!需要在命令行里打印出来。此外,-w参数在GUI界面时非常有用。

    • -i chengzi.ico 就是指设置自己的图标图案,因为默认打包图片是下图这样的。这个参数也可以写成–icon=chengzi.ico

    最后稍微总结一下:

    Pyinstaller -F py_word.py 打包exe
    
    Pyinstaller -F -w py_word.py 不带控制台的打包
    
    Pyinstaller -F -w -i chengzi.ico py_word.py 打包指定exe图标打包
    以上三个是比较常用的参数,其他参数详见下表
    

    Pyinstaller参数大全
    在这里插入图片描述

    5、ico图片生成
    自己做的软件都喜欢放上自己的图标,不过哪来那么多ico图片呢?

    一个是可以找专门的ico图片网站,不过都很小众,图片库也很小。

    另一个是可以自己生成,这里就给大家分享一个网站,可以把其他格式图片转成ico格式:https://app.xunjiepdf.com/img2icon/

    ico图片格式转换

    二、压缩打包

    好了,小伙伴们

    来到了最激动人心的时刻,刚刚生成的exe实在太大了,300多M的软件程序想用微信传一下都费劲。

    我也试过很多方法,比如:修改spec文件自定义打包、pipenv 虚拟环境、使用开源的upx压缩等等,但是往往要么过程比较麻烦,要么成功率不高(压缩成不成功全看脸)。

    而我要分享的,是自己一直在用的,最简单且成功率极高的方法——conda创建虚拟环境。

    1、Python打包为什么大?
    在压缩打包之前,先简单说一下为什么Python打包过大?

    Python打包exe,不但体积大而且运行奇慢。解释型语言大都是这个样子,只不过Python尤其突出。要解决大而慢,只能用编译型语言,如C,C++,甚至VB都好很多,体积最小的是汇编。[1]

    此外,还有知乎大佬说是因为“Anaconda里内置了很多库,打包的时候打包了很多不必要的模块进去,要用纯净的Python来打包。”

    所以我们可以模拟一个新环境,其中只安装我们本次打包所必要的工具包即可。

    那最适合的就是——虚拟环境了!

    2、虚拟环境
    Python创建虚拟环境的方法有很多,而我是个Anaconda忠实用户,如果你跟我一样,那就简单了。(大家也可以使用Virtualenv、Pipenv来设置虚拟环境,善用搜索,方法大同小异)

    先记几个命令,很简单

    conda create -n 虚拟环境名字 python==3.6  #创建虚拟环境
    
    conda activate 虚拟环境名字  #激活虚拟环境
    
    conda deactivate  #退出虚拟环境
    

    从开始菜单运行“Anaconda Prompt”,出现的界面输入创建虚拟环境的指令。成功创建了一个名字为aotu,且基于python版本3.6的虚拟环境。
    在这里插入图片描述
    在创建过程中需要回复(y/n),Yes,再激活虚拟环境
    在这里插入图片描述
    conda安装的虚拟环境,会把虚拟环境的目录生成在anaconda安装目录下的env目录下。
    在这里插入图片描述
    当然我们也可以在刚刚的窗口,使用命令conda info --envs,来查看conda环境下所有的虚拟环境
    在这里插入图片描述
    3、安装所需的库
    上面我们已经创建并激活了名为aotu虚拟环境,输入conda list可以查看当前虚拟环境里已经安装的库。
    在这里插入图片描述
    我们打开所要打包的Python脚本,对比上图,发现pandas,docx这两个库还需要额外安装。当然,也不能缺了打包必不可少的pyinstaller库。
    待打包脚本
    安装库的过程不再赘述

    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas
    
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple python-docx
    
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller
    

    安装后再看

    图片
    已成功安装,还有一些因为这几个库所附带安装的,就不管他们了。

    4、Pyinstaller打包步骤
    这里就不再重复了,只换个苹果图标试试

    Pyinstaller -F -w -i apple.ico py_word.py
    

    图片
    生成
    在这里插入图片描述
    成功压缩到29.8M,如果不导入pandas这位大神,应该就可以10多M了

    运行一下,毫无问题

    最后再简单总结一下虚拟环境+打包的全过程(只三步):

    #创建虚拟环境
    conda create -n aotu python=3.6
    
    #激活虚拟环境
    conda activate aotu
    
    #Pyinstaller打包
    Pyinstaller -F -w -i apple.ico py_word.py
    

    5、总结一些小坑
    1、说起来还是有点玄学,上文中一模一样的过程我在两个电脑都执行过一遍。在其中一个上显示缺少xlrd这个库,安装后成功打包,也是一样的大小。小伙伴们可以在文末获取文件,也试试。

    2、在安装库是要注意一些库名,比如docx这个库不要pip install docx,而是需要

    pip install python-docx
    

    还有一些库可能因为版本不同导致不能使用,多碰碰壁就好了。

    3、为了防止打包时候有些库没安装好,可以先在虚拟环境中执行一下Python脚本。运行无误的话再打包,比较保险。
    图片
    4、最后,如果想要删除虚拟环境的话,可执行下方命令

    conda remove -n aotu--all 
    

    5、

    打包为exe的话,版本尽量选择python3.6+32位版本,因为win64位系统向下兼容32位程序,但是如果不考虑32位系统的话无所谓,直接python64位版本直接打包就可以,只是只能在win64位系统上跑。

    6、下载链接
    测试Python打包,手头又没有合适的文件,这里给出文章中的所有文件链接:https://pan.baidu.com/s/1GsASKTrIqBaqO5UeVnC2wA 提取码:kxpy

    展开全文
  • 将自己写的python文件压缩exe有两种方法: 1、使用pyinstaller 将自己写的python文件压缩exe有两种方法: 1、使用pyinstaller step2:cd 到你的文件目录cd D:\py\python testcases\Slice step4:看结果...
  • 安装压缩工具,在程序中运行压缩命令进行压缩文件
  • UnityPC端打包exe,压缩为一个exe文件
  • WinRar压缩图片捆绑EXE文件

    千次阅读 2019-02-12 20:29:15
    3.exe 木马exe文件 4.压缩软件winrar 生成图标文件:http://bitbug.net/ 压缩步骤 1.jpg和3.exe添加到压缩压缩为payload.zip格式(压缩方式-最好,勾选-创建自解压格式压缩文件) 高级-自解压选项—设置...
  • XCAB工具,用于在Windows平台上将文件压缩为CAB格式的文件
  • UPX压缩和解压缩器,不是源码,是工具,可以实现exe文件压缩和解压缩
  • mysqlbinlog.exe处理二进制日志文件!想看增量备份的dml日志文件,却看不懂,这个文件可以帮你查看,不弄多说,你懂的。 提示: 有的人说用了这个文件也看不了...压缩包包含mysqlbinlog.exe、mysqldump.exe两个文件
  • 应用程序exe文件压缩

    2009-02-11 09:20:48
    可大大减少exe文件的体积,可大大减少exe文件的体积
  • Alternate EXE Packer 1.720 - 压缩打包exe文件
  • UPX Shell是一款开源的WIN32 EXE/DLL文件压缩器,能够即时显示压缩进度和压缩文件大小,支持压缩与解压缩,建议勾选创建备份文件,完成后测试文件。通过高级选项,能直接整合到右键菜单中。内置多种压缩模式和...
  • Electron学习即将告一段落,以后可能就没有时间做了,自己想做的东西也做出来了,最后也要有一个结尾,说一下Electron开发后程序的压缩与打包 代码压缩 代码压缩主要使用asar。压缩方法主要有两种, 先node.js...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 133,504
精华内容 53,401
关键字:

如何压缩exe文件

友情链接: ds1820.rar