Self extracting archive utility free download - Archive Collectively Operation Utility, SuperZip Archive Utility, Utility Self Service, and many more programs.
makeself.sh is a small shell script that generates a self-extractablecompressed tar archive from a directory. The resulting file appears as a shell script(many of those have a .run suffix), and can be launched as is. The archivewill then uncompress itself to a temporary directory and an optional arbitrarycommand will be executed (for example an installation script). This is prettysimilar to archives generated with WinZip Self-Extractor in the Windows world.Makeself archives also include checksums for integrity self-validation (CRCand/or MD5/SHA256 checksums).
The makeself.sh script itself is used only to create the archives from adirectory of files. The resultant archive is actually a compressed (usinggzip, bzip2, or compress) TAR archive, with a small shell script stub at thebeginning. This small stub performs all the steps of extracting the files,running the embedded command, and removing the temporary files when done.All the user has to do to install the software contained in such anarchive is to run the archive, i.e sh nice-software.run . I recommendusing the .run (which was introduced by some Makeself archives released byLoki Software) or .sh suffix for such archives not to confuse the users,so that they will know they are actually shell scripts (with quite a lot of binary dataattached to them though!).
Users can unzip the contents of a self-extracting Zip file by simply running it. This is convenient because the end user does not need an unzip program (like WinZip ) to unzip files from these self-extracting archives. WinZip Self-Extractor Personal Edition, included with WinZip, creates Windows self-extracting Zip files. Archive formats: Zip. ZIP archives can also include extra data that is not related to the ZIP archive. This allows for a ZIP archive to be made into a self-extracting archive (application that decompresses its contained data), by prepending the program code to a ZIP archive and marking the file as executable. Self-Extracting Archive Utility (SEAU) builds a professional software installation program in a single compressed executable file. The installer runs on all of the 32.
I am trying to keep the code of this script as portable as possible, i.e it isnot relying on any bash-specific features and only calls commands that areinstalled on any functioning UNIX-compatible system. This script as well asthe archives it generates should run on any Unix flavor, with any compatibleBourne shell, provided of course that the compression programs are available.
As of version 2.1, Makeself has been rewritten and tested on the followingplatforms :
Linux (all distributions)
Sun Solaris (8 and above)
HP-UX (tested on 11.0 and 11i on HPPA RISC)
SCO OpenUnix and OpenServer
IBM AIX 5.1L
macOS (Darwin)
SGI IRIX 6.5
FreeBSD
UnicOS / Cray
Cygwin (Windows)
If you successfully run Makeself and/or archives created with it on anothersystem, then please let me know!
Examples of publicly available archives made using makeself are :
Game patches and installers for Id Software games like Quake 3 for Linux or Return To Castle Wolfenstein ;
All game patches released by Loki Software for the Linux version of popular games ;
The nVidia drivers for Linux
The installer for the Linux version of Google Earth
The VirtualBox installers for Linux
The Makeself distribution itself ;-)
and countless others
Important note for Apache users: By default, most Web servers will think that Makeself archives are regular text files and thus they may show up as text in a Web browser. The correct way to prevent this is to add a MIME type for this file format, like so (in httpd.conf) :
AddType application/x-makeself .run
Important note for certain GNU/Linux distributions: Archives created with Makeself prior to v2.1.2 were using an old syntax for the head and tail Unix commands that is being progressively obsoleted in their GNU forms. Therefore you may have problems uncompressing some of these archives. A workaround for this is to set the environment variable $_POSIX2_VERSION to enable the old syntax, i.e. :
export _POSIX2_VERSION=199209 Usage
The syntax of makeself is the following:
args are optional options for Makeself. The available ones are :
--version : Prints the version number on stdout, then exits immediately
--gzip : Use gzip for compression (the default on platforms on which gzip is commonly available, like Linux)
--bzip2 : Use bzip2 instead of gzip for better compression. The bzip2 command must be available in the command path. It is recommended that the archive prefix be set to something like .bz2.run, so that potential users know that theyll need bzip2 to extract it.
--pbzip2 : Use pbzip2 instead of gzip for better and faster compression on machines having multiple CPUs. The pbzip2 command must be available in the command path. It is recommended that the archive prefix be set to something like .bz2.run, so that potential users know that theyll need bzip2 to extract it.
--xz : Use xz instead of gzip for better compression. The xz command must be available in the command path. It is recommended that the archive prefix be set to something like .xz.run for the archive, so that potential users know that theyll need xz to extract it.
--lzo : Use lzop instead of gzip for better compression. The lzop command must be available in the command path. It is recommended that the archive prefix be set to something like .lzo.run for the archive, so that potential users know that theyll need lzop to extract it.
--lz4 : Use lz4 instead of gzip for better compression. The lz4 command must be available in the command path. It is recommended that the archive prefix be set to something like .lz4.run for the archive, so that potential users know that theyll need lz4 to extract it.
--zstd : Use zstd instead of gzip for better compression. The zstd command must be available in the command path. It is recommended that the archive prefix be set to something like .zstd.run for the archive, so that potential users know that theyll need zstd to extract it.
--pigz : Use pigz for compression.
--base64 : Encode the archive to ASCII in Base64 format instead of compressing (base64 command required).
--gpg-encrypt : Encrypt the archive using gpg -ac -z $COMPRESS_LEVEL . This will prompt for a password to encrypt with. Assumes that potential users have gpg installed.
--ssl-encrypt : Encrypt the archive using openssl aes-256-cbc -a -salt . This will prompt for a password to encrypt with. Assumes that the potential users have the OpenSSL tools installed.
--compress : Use the UNIX compress command to compress the data. This should be the default on all platforms that dont have gzip available.
--nocomp : Do not use any compression for the archive, which will then be an uncompressed TAR.
--complevel : Specify the compression level for gzip, bzip2, pbzip2, zstd, xz, lzo or lz4. (defaults to 9)
--threads : Specify the number of threads to be used by compressors that support parallelization. Omit to use compressors default. Most useful (and required) for opting into xzs threading, usually with --threads=0 for all available cores. pbzip2 and pigz are parallel by default, and setting this value allows limiting the number of threads they use.
--notemp : The generated archive will not extract the files to a temporary directory, but in a new directory created in the current directory. This is better to distribute software packages that may extract and compile by themselves (i.e. launch the compilation through the embedded script).
--current : Files will be extracted to the current directory, instead of in a subdirectory. This option implies --notemp above.
--follow : Follow the symbolic links inside of the archive directory, i.e. store the files that are being pointed to instead of the links themselves.
--append (new in 2.1.x) : Append data to an existing archive, instead of creating a new one. In this mode, the settings from the original archive are reused (compression type, label, embedded script), and thus dont need to be specified again on the command line.
--header : Makeself uses a separate file to store the header stub, called makeself-header.sh . By default, it is assumed that it is stored in the same location as makeself.sh. This option can be used to specify its actual location if it is stored someplace else.
--cleanup : Specify a script that is run when execution is interrupted or finishes successfully. The script is executed with the same environment and initial script_args as startup_script .
--copy : Upon extraction, the archive will first extract itself to a temporary directory. The main application of this is to allow self-contained installers stored in a Makeself archive on a CD, when the installer program will later need to unmount the CD and allow a new one to be inserted. This prevents Filesystem busy errors for installers that span multiple CDs.
--nox11 : Disable the automatic spawning of a new terminal in X11.
--nowait : When executed from a new X11 terminal, disable the user prompt at the end of the script execution.
--nomd5 and --nocrc : Disable the creation of a MD5 / CRC checksum for the archive. This speeds up the extraction process if integrity checking is not necessary.
--sha256 : Adds a SHA256 checksum for the archive. This is in addition to the MD5 / CRC checksums unless --nomd5 is also used.
--lsm file : Provide and LSM file to makeself, that will be embedded in the generated archive. LSM files are describing a software package in a way that is easily parseable. The LSM entry can then be later retrieved using the --lsm argument to the archive. An example of a LSM file is provided with Makeself.
--tar-extra opt : Append more options to the tar command line.
For instance, in order to exclude the .git directory from the packaged archive directory using the GNU tar , one can use makeself.sh --tar-extra '--exclude=.git' ...
--keep-umask : Keep the umask set to shell default, rather than overriding when executing self-extracting archive.
--packaging-date date : Use provided string as the packaging date instead of the current date.
--license : Append a license file.
--nooverwrite : Do not extract the archive if the specified target directory already exists.
--header file : Specify the location of the header script file (default makeself-header.sh )
--help-header file : Add a header to the archives --help output.
archive_dir is the name of the directory that contains the files to be archived
file_name is the name of the archive to be created
label is an arbitrary text string describing the package. It will be displayed while extracting the files.
startup_script is the command to be executed from within the directory of extracted files. Thus, if you wish to execute a program contain in this directory, you must prefix your command with ./ . For example, ./program will be fine. The script_args are additional arguments for this command.
Here is an example, assuming the user has a package image stored in a /home/joe/mysoft , and he wants to generate a self-extracting package named mysoft.sh , which will launch the setup script initially stored in /home/joe/mysoft :
makeself.sh /home/joe/mysoft mysoft.sh 'Joe's Nice Software Package' ./setup
Here is also how I created the makeself.run archive which contains the Makeself distribution :
makeself.sh --notemp makeself makeself.run 'Makeself by Stephane Peter' echo 'Makeself has extracted itself'
Archives generated with Makeself can be passed the following arguments:
--keep : Prevent the files to be extracted in a temporary directory that will be removed after the embedded scripts execution. The files will then be extracted in the current working directory and will stay here until you remove them.
--verbose : Will prompt the user before executing the embedded command
--target dir : Allows to extract the archive in an arbitrary place.
--nox11 : Do not spawn a X11 terminal.
--confirm : Prompt the user for confirmation before running the embedded command.
--info : Print out general information about the archive (does not extract).
--lsm : Print out the LSM entry, if it is present.
--list : List the files in the archive.
--check : Check the archive for integrity using the embedded checksums. Does not extract the archive.
--nochown : By default, a chown -R command is run on the target directory after extraction, so that all files belong to the current user. This is mostly needed if you are running as root, as tar will then try to recreate the initial user ownerships. You may disable this behavior with this flag.
--tar : Run the tar command on the contents of the archive, using the following arguments as parameter for the command.
--noexec : Do not run the embedded script after extraction.
--noexec-cleanup : Do not run the embedded cleanup script.
--nodiskspace : Do not check for available disk space before attempting to extract.
--cleanup-args : Specify arguments to be passed to the cleanup script. Wrap value in quotes to specify multiple arguments.
Any subsequent arguments to the archive will be passed as additional arguments to the embedded command. You must explicitly use the -- special command-line construct before any such options to make sure that Makeself will not try to interpret them. Startup Script
The startup script must be a regular Shell script.
Within the startup script, you can use the $USER_PWD variable to get the path of the folder from which the self-extracting script is executed. This is especially useful to access files that are located in the same folder as the script, as shown in the example below.
my-self-extracting-script.sh --fooBarFileParameter foo.bar Building and Testing
Clone the git repo and execute git submodule update --init --recursive to obtain all submodules.
To make a release: make
To run all tests: make test Maven Usage
Makeself is now supported by the following maven plugin makeself-maven-plugin. Please refer to project for usage and report any bugs in regards to maven plugin on that project. License
Makeself itself is covered by the GNU General Public License (GPL) version 2 and above. Archives generated by Makeself dont have to be placed under this license (although I encourage it ;-)), since the archive itself is merely data for Makeself. Contributing Self-extracting Archive Macosx
I will gladly consider merging your pull requests on the GitHub repository. However, please keep the following in mind:
One of the main purposes of Makeself is portability. Do not submit patches that will break supported platforms. The more platform-agnostic, the better.
Please explain clearly what the purpose of the patch is, and how you achieved it. Download
Get the latest official distribution here (version 2.4.2).
The latest development version can be grabbed from GitHub. Feel free to submit any patches there through the fork and pull request process. Version history
v1.0: Initial public release
v1.1: The archive can be passed parameters that will be passed on to the embedded script, thanks to John C. Quillan
v1.2: Cosmetic updates, support for bzip2 compression and non-temporary archives. Many ideas thanks to Francois Petitjean.
v1.3: More patches from Bjarni R. Einarsson and Francois Petitjean: Support for no compression ( --nocomp ), script is no longer mandatory, automatic launch in an xterm, optional verbose output, and -target archive option to indicate where to extract the files.
v1.4: Many patches from Francois Petitjean: improved UNIX compatibility, automatic integrity checking, support of LSM files to get info on the package at run time..
v1.5.x: A lot of bugfixes, and many other patches, including automatic verification through the usage of checksums. Version 1.5.5 was the stable release for a long time, even though the Web page didnt get updated ;-). Makeself was also officially made a part of the Loki Setup installer, and its source is being maintained as part of this package.
v2.0: Complete internal rewrite of Makeself. The command-line parsing was vastly improved, the overall maintenance of the package was greatly improved by separating the stub from makeself.sh. Also Makeself was ported and tested to a variety of Unix platforms.
v2.0.1: First public release of the new 2.0 branch. Prior versions are officially obsoleted. This release introduced the --copy argument that was introduced in response to a need for the UT2K3 Linux installer.
v2.1.0: Big change : Makeself can now support multiple embedded tarballs, each stored separately with their own checksums. An existing archive can be updated with the --append flag. Checksums are also better managed, and the --nochown option for archives appeared.
v2.1.1: Fixes related to the Unix compression (compress command). Some Linux distributions made the insane choice to make it unavailable, even though gzip is capable of uncompressing these files, plus some more bugfixes in the extraction and checksum code.
v2.1.2: Some bug fixes. Use head -n to avoid problems with POSIX conformance.
v2.1.3: Bug fixes with the command line when spawning terminals. Added --tar , --noexec for archives. Added --nomd5 and --nocrc to avoid creating checksums in archives. The embedded script is now run through eval. The --info output now includes the command used to create the archive. A man page was contributed by Bartosz Fenski.
v2.1.4: Fixed --info output. Generate random directory name when extracting files to . to avoid problems. Better handling of errors with wrong permissions for the directory containing the files. Avoid some race conditions, Unset the $CDPATH variable to avoid problems if it is set. Better handling of dot files in the archive directory.
v2.1.5: Made the md5sum detection consistent with the header code. Check for the presence of the archive directory. Added --encrypt for symmetric encryption through gpg (Eric Windisch). Added support for the digest command on Solaris 10 for MD5 checksums. Check for available disk space before extracting to the target directory (Andreas Schweitzer). Allow extraction to run asynchronously (patch by Peter Hatch). Use file descriptors internally to avoid error messages (patch by Kay Tiong Khoo).
v2.1.6: Replaced one dot per file progress with a realtime progress percentage and a spinning cursor. Added --noprogress to prevent showing the progress during the decompression. Added --target dir to allow extracting directly to a target directory. (Guy Baconniere)
v2.2.0: First major new release in years! Includes many bugfixes and user contributions. Please look at the project page on Github for all the details.
v2.3.0: Support for archive encryption via GPG or OpenSSL. Added LZO and LZ4 compression support. Options to set the packaging date and stop the umask from being overriden. Optionally ignore check for available disk space when extracting. New option to check for root permissions before extracting.
v2.3.1: Various compatibility updates. Added unit tests for Travis CI in the GitHub repo. New --tar-extra , --untar-extra , --gpg-extra , --gpg-asymmetric-encrypt-sign options.
v2.4.0: Added optional support for SHA256 archive integrity checksums.
v2.4.2: New cleanup and cleanup-args arguments for cleanup scripts. Added threading support for supported compressors. Now supports zstd compression. Links Winrar Self Extracting Archive Software
Check out the Loki Setup installer, used to install many Linux games and other applications, and of which I am the co-author. Since the demise of Loki, I am now the official maintainer of the project, and it is now being hosted here on GitHub.
Bjarni R. Einarsson also wrote the setup.sh installer script, inspired by Makeself. Check it out ! Contact
This script was written by Stphane Peter (megastep at megastep.org). Any enhancements and suggestions are welcome.
Contributions were included from John C. Quillan, Bjarni R. Einarsson,Francois Petitjean, Ryan C. Gordon, and many contributors on GitHub. If you think I forgotyour name, dont hesitate to contact me.
This project is now hosted on GitHub. Feel free to submit patches and bug reports on the project page.
A self-extracting archive ( SFX/SEA ) is a computerexecutable program which contains compressed data in an archive file combined with machine-executable program instructions to extract this information on a compatible operating system and without the necessity for a suitable extractor to be already installed on the target computer. The executable part of the file is known as the stub and the non-executable part the archive.
Self-extracting files are very convenient, if you want to give the compressed file to someone, but you don't know if they have the compression program that can decompress the file. You can also use self-extracting to distribute your own software. For example, the WinRAR installation program is made using the graphical GUI RAR self-extracting module Default.sfx. A self-extracting archive created using 7-Zip Overview [ edit ]
It incorporates an executable file module, a module used to run uncompressed files from compressed files. Such a compressed file does not require an external program to decompress the contents of the self-extracting file, and it can run the operation itself. However, WinRAR can still treat self-extracting files as any other compressed files. So if you are unwilling to run the self-extracting file you received (for example, when it may contain a virus), you can use WinRAR to view or decompress its content.
On executing a self-extracting archive under an operating system which supports it, the archive contents are extracted and stored as files on the disk. Often, the embedded self-extractor supports a number of command line arguments to control the behaviour, i.e. to specify the target location or select only specific files to be extracted.
Non-self-extracting archives contain the archived files only and therefore need to be extracted with a compatible program. Self-extracting archives cannot self-extract under a different operating system but most often can still be opened with a suitable extractor as this tool will disregard the executable part of the file and instead extract only the archive resource. In some cases this requires the self-extracting executable to be renamed to hold a file extension associated with the corresponding packer. Self-extracting files usually have an .exe extension like other executable files.
For example, an archive may be called somefiles.zip - it can be opened under any operating system by a suitable archive manager which supports both the file format and compression algorithm used. It could alternatively be converted into somefiles.exe which will self-extract on a machine running Microsoft Windows without the need for that suitable archive manager. It will not self-extract under Linux, but can be opened with a suitable Linux archive manager.
There are several functionally equivalent but incompatible archive file formats, including ZIP, RAR, 7z and many others. Some programs can manage (create, extract, or modify) only one type of archive whilst many others can handle multiple formats. There is additionally a distinction between the file format and compression algorithm used. A single file format, such as 7z, can support multiple different compression algorithms including LZMA, LZMA2, PPMd and BZip2. For a decompression utility to correctly expand an archive of either the self-extracting or standard variety, it must be able to operate on both the file format and algorithm used. The exact executable code placed at the beginning of a self-extracting archive may therefore need to be varied depending on what options were used to create the archive. The decompression routines will be different for a LZMA 7z archive when compared with a LZMA2 7z archive, for example.
Several programs can create self-extracting archives. For Windows there is WinZip, WinRAR, 7-Zip, WinUHA, KGB Archiver, Make SFX, the built-in IExpress wizard and many others, some experimental. For Macintosh there are StuffIt, The Unarchiver, and 7zX. There are also programs that create self-extracting archives on Unix as shell scripts which utilizes programs like tar and gzip (which must be present in destination system). Others (like 7-Zip or RAR) can create self-extracting archives as regular executables in ELF format. An early example of a self-extracting archive was the Unix shar archive in which one or more text files were combined into a shell script that when executed recreated the original files.
Self-extracting archives can be used to archive any number of data as well as executable files. They must be distinguished from executable compression, where the executable file contains a single executable only and running the file does not result in the uncompressed file being stored on disk, but in its code being executed in memory after decompression. Advantages [ edit ]
Archiving files rather than sending them separately allows several related files to be combined into a single resource. It also has the benefit of reducing the size of files not already efficiently compressed (many compression algorithms cannot make already compressed data any smaller. Compression will therefore usually reduce the size of a plain text document but hardly affect a JPEG picture or a word processor document. This is because most modern Word Processor file formats now involve a certain level of compression already). Self-extracting archives also extend the advantages of compressed archives to users who do not have the necessary programs installed on their computer to otherwise extract their contents, but are running a compatible operating system. However, for users who do have archive managing software, a self-extracting archive may still be slightly more convenient.
Self-extracting archives also allow for their contents to be encrypted for security, provided the chosen underlying compression algorithm and format allow for it. In many cases though the file and directory names are not part of the encryption and can be seen by anyone, even without the key or password. Additionally, some encryption algorithms rely on there being no known partial plaintexts available so if an attacker is able to guess part of the contents of the files from their names or context alone they may be able to break the encryption on the entire archive with only a reasonable amount of computing power and time. Care therefore needs to be taken or a more suitable encryption algorithm used. Disadvantages [ edit ]
A disadvantage of self-extracting archives is that running executables of unverified reliability, for example when sent as an email attachment or downloaded from the Internet, may be a security risk. An executable file described as a self-extracting archive may actually be a malicious program. One protection against this is to open it with an archive manager instead of executing it (losing the minor advantage of self-extraction); the archive manager will either report the file as not an archive or will show the underlying metadata of the executable file - a strong indication that the file is not actually a self-extracting archive.
Additionally, some systems for distributing files do not accept executable files in order to prevent the transmission of malicious programs. These systems disallow self-extracting archive files unless they are cumbersomely renamed by the sender to, say, somefiles.exx, and later renamed back again by the recipient. This technique is gradually becoming less effective however as an increasing number of security suites and antivirus software packages instead scan file headers for the underlying format rather than relying on a correct file extension. These security systems will not be fooled by an incorrect file extension and are particularly prevalent in the analysis of email attachments.
Self-extracting archives will only run under the operating system with which they are compatible. Also, since they must include executable code to handle the extraction of the contained archive file, they are a little larger than the original archive. Preparation [ edit ] Preparing Files [ edit ]
First, gather all the files that need to be decompressed into a folder, then select all and click the 'Compress' option in the right-click menu. Though the actual button might be different, most systems support the compression. However, some systems will compress the file into zip document, while some others will compress the file into rar document. As a matter of fact, most systems allow users to decide what kind of doc would the compressed file be, as users can modulate the setting in the personalized box.
Note: The general software cracking step is to copy the cracked file to the software installation directory to overwrite the original file, and then execute some programs such as the memory registration machine or registry import program. In this example, all files must be overwritten and copied to the software installation directory, and then execute FP and reg to import the registration data. Generating format [ edit ]
In the pop-up dialog box, select the appropriate compression rate in the 'Compression Mode', and check the 'Create a self-extracting compressed file' option, and then click 'Advanced Self-extracting options'.
Compression rate, mostly known as data compression rate or compression power is a measurement of the relative reduction in size of data representation produced by a data compression algorithm. Users can calculate the rate by self, with the equation:
Compression Ratio = Uncompressed Size / Compressed Size
Typically, for high compression rates, PDE-based approach does not only give far better results than the widely-used JPEG standard, but can even beat the quality of the highly optimised JPEG 2000 codec (Galic, Zovko-Cihlar, 2012) [1] . Other than that, many computer science scholars focus on how to optimize the compression progress, in order to save calculation power and improve the functionality. Scholars also asserted that acceptable compression ratios for 2,048, 1,024, and 512 matrices are 25:1, 20:1, and 10:1, respectively, based on a mean-square error of 0.02, based on a research that was performed using the full-frame bit-allocation compression technique on 78 radiological images, including digitized radiographs, computed radiographs, and computed tomography images (Lo, and Huang, 1986 [2] ). Setting information [ edit ]
The setting here is the focus, mainly the four modules of 'General', 'Mode', 'Text and Icon', and 'License'.
In the 'General' module, you should set the location where the file is automatically decompressed and whether to automatically execute what program before and after decompression. Because the files are to be automatically extracted to the software installation directory, the original software installation path, namely ProgramfilesFpinger should be entered in the 'Extract path' column. Needless to say, 'run after decompression' and 'run before decompression' have been written very clearly. Here you need to automatically display 'Description, txt' before decompression, and execute FP and reg to import registration information after all files are decompressed to the destination folder.
Tips: Only Fpinger is entered here because the option 'Create in'ProgramFiles' has been selected by default. At this time, RAR can automatically detect which partition the current operating system is installed on, that is, if your XP installation In the E partition, the files will eventually be automatically decompressed into the E:ProgramFilesFpinger directory, which is a very useful feature for those who have installed multiple systems.
The 'Mode' module mainly sets how to deal with the decompressed file when it encounters a file with the same name at the destination and whether to display default information for adjustment. The meaning of 'quiet mode' is whether to display information such as the default decompression path during the entire decompression process. Here, since the decryption package is made, select 'Hide All', that is, no prompt window will be displayed.
The 'overwrite method' is better understood. Similarly, for this decryption package, when it encounters the file with the same name, it should be overwritten directly, so select 'overwrite all files'. Self Extracting Archive Mac
'Text and icon', as the name suggests, this is to set the reminder message and the icon of the decompression package during decompression. 'Self-extracting file window title' will appear in the title bar during decompression, and 'displayed text' will appear at the decompression prompt of RAR.
'License' is the 'software license agreement' that you can see every time you install the software. Just fill in the content you need. If you want, you can also put the software's function introduction here.
To create a self-extracting file from the command line, you can use the -sfx switch to create a new compressed file, or s to convert an existing compressed file into a self-extracting file. In the WinRAR graphical interface, there are two ways, one is when you want to create a new compressed file, select the 'create self-extracting file' option from the compressed file name and parameter dialog box, and the other is to enter the existing compressed file and click ' Self-extracting' button.
WinRAR contains several self-extracting modules, all self-extracting modules have .sfx extension and must be placed in the folder where WinRAR is located. The default WinRAR always uses the Default.sfx module, but you can also directly specify other module names with the '-sfx' switch or the 'S' command. For example, to convert myarchive.rar to self-extracting format, use WinCon.SFX module to run:
WinRAR SWinCon.SFX myarchive.rar See also [ edit ]
Kolmogorov complexity, a theoretical lower bound on the size of a self-extracting archive References [ edit ]
Gali, I., Zovko-Cihlar, B., Rimac-Drlje, S (April 2012). 'Computer image quality selection between JPEG, JPEG 2000 and PDE compression'. In 2012 19th International Conference on Systems, Signals and Image Processing (IWSSIP) . (pp. 437-441).: IEEE. CS1 maint: multiple names: authors list (link)
Lo, S. C., Huang, H. K. (1986). 'Compression of radiological images with 512, 1,024, and 2,048 matrices'. Radiology . 161(2): 519-525. CS1 maint: multiple names: authors list (link) External links [ edit ] Self Extracting File
http://www.jackmccarthy.com/malware/WinRAR_Archive_Creation.htm (About SFX)
http://hem.bredband.net/magli143/exo/ for 6502/Z80/6809 executables Winrar Self Extracting Archive Retrieved from 'https://en.wikipedia.org/w/index.php?title=Self-extracting_archiveoldid=979856741'
makeself.sh is a small shell script that generates a self-extractablecompressed tar archive from a directory. The resulting file appears as a shell script(many of those have a .run suffix), and can be launched as is. The archivewill then uncompress itself to a temporary directory and an optional arbitrarycommand will be executed (for example an installation script). This is prettysimilar to archives generated with WinZip Self-Extractor in the Windows world.Makeself archives also include checksums for integrity self-validation (CRCand/or MD5/SHA256 checksums).
The makeself.sh script itself is used only to create the archives from adirectory of files. The resultant archive is actually a compressed (usinggzip, bzip2, or compress) TAR archive, with a small shell script stub at thebeginning. This small stub performs all the steps of extracting the files,running the embedded command, and removing the temporary files when done.All the user has to do to install the software contained in such anarchive is to run the archive, i.e sh nice-software.run . I recommendusing the .run (which was introduced by some Makeself archives released byLoki Software) or .sh suffix for such archives not to confuse the users,so that they will know they are actually shell scripts (with quite a lot of binary dataattached to them though!).
Users can unzip the contents of a self-extracting Zip file by simply running it. This is convenient because the end user does not need an unzip program (like WinZip ) to unzip files from these self-extracting archives. WinZip Self-Extractor Personal Edition, included with WinZip, creates Windows self-extracting Zip files. Archive formats: Zip. ZIP archives can also include extra data that is not related to the ZIP archive. This allows for a ZIP archive to be made into a self-extracting archive (application that decompresses its contained data), by prepending the program code to a ZIP archive and marking the file as executable. Self-Extracting Archive Utility (SEAU) builds a professional software installation program in a single compressed executable file. The installer runs on all of the 32.
I am trying to keep the code of this script as portable as possible, i.e it isnot relying on any bash-specific features and only calls commands that areinstalled on any functioning UNIX-compatible system. This script as well asthe archives it generates should run on any Unix flavor, with any compatibleBourne shell, provided of course that the compression programs are available.
As of version 2.1, Makeself has been rewritten and tested on the followingplatforms :
Linux (all distributions)
Sun Solaris (8 and above)
HP-UX (tested on 11.0 and 11i on HPPA RISC)
SCO OpenUnix and OpenServer
IBM AIX 5.1L
macOS (Darwin)
SGI IRIX 6.5
FreeBSD
UnicOS / Cray
Cygwin (Windows)
If you successfully run Makeself and/or archives created with it on anothersystem, then please let me know!
Examples of publicly available archives made using makeself are :
Game patches and installers for Id Software games like Quake 3 for Linux or Return To Castle Wolfenstein ;
All game patches released by Loki Software for the Linux version of popular games ;
The nVidia drivers for Linux
The installer for the Linux version of Google Earth
The VirtualBox installers for Linux
The Makeself distribution itself ;-)
and countless others
Important note for Apache users: By default, most Web servers will think that Makeself archives are regular text files and thus they may show up as text in a Web browser. The correct way to prevent this is to add a MIME type for this file format, like so (in httpd.conf) :
AddType application/x-makeself .run
Important note for certain GNU/Linux distributions: Archives created with Makeself prior to v2.1.2 were using an old syntax for the head and tail Unix commands that is being progressively obsoleted in their GNU forms. Therefore you may have problems uncompressing some of these archives. A workaround for this is to set the environment variable $_POSIX2_VERSION to enable the old syntax, i.e. :
export _POSIX2_VERSION=199209 Usage
The syntax of makeself is the following:
args are optional options for Makeself. The available ones are :
--version : Prints the version number on stdout, then exits immediately
--gzip : Use gzip for compression (the default on platforms on which gzip is commonly available, like Linux)
--bzip2 : Use bzip2 instead of gzip for better compression. The bzip2 command must be available in the command path. It is recommended that the archive prefix be set to something like .bz2.run, so that potential users know that theyll need bzip2 to extract it.
--pbzip2 : Use pbzip2 instead of gzip for better and faster compression on machines having multiple CPUs. The pbzip2 command must be available in the command path. It is recommended that the archive prefix be set to something like .bz2.run, so that potential users know that theyll need bzip2 to extract it.
--xz : Use xz instead of gzip for better compression. The xz command must be available in the command path. It is recommended that the archive prefix be set to something like .xz.run for the archive, so that potential users know that theyll need xz to extract it.
--lzo : Use lzop instead of gzip for better compression. The lzop command must be available in the command path. It is recommended that the archive prefix be set to something like .lzo.run for the archive, so that potential users know that theyll need lzop to extract it.
--lz4 : Use lz4 instead of gzip for better compression. The lz4 command must be available in the command path. It is recommended that the archive prefix be set to something like .lz4.run for the archive, so that potential users know that theyll need lz4 to extract it.
--zstd : Use zstd instead of gzip for better compression. The zstd command must be available in the command path. It is recommended that the archive prefix be set to something like .zstd.run for the archive, so that potential users know that theyll need zstd to extract it.
--pigz : Use pigz for compression.
--base64 : Encode the archive to ASCII in Base64 format instead of compressing (base64 command required).
--gpg-encrypt : Encrypt the archive using gpg -ac -z $COMPRESS_LEVEL . This will prompt for a password to encrypt with. Assumes that potential users have gpg installed.
--ssl-encrypt : Encrypt the archive using openssl aes-256-cbc -a -salt . This will prompt for a password to encrypt with. Assumes that the potential users have the OpenSSL tools installed.
--compress : Use the UNIX compress command to compress the data. This should be the default on all platforms that dont have gzip available.
--nocomp : Do not use any compression for the archive, which will then be an uncompressed TAR.
--complevel : Specify the compression level for gzip, bzip2, pbzip2, zstd, xz, lzo or lz4. (defaults to 9)
--threads : Specify the number of threads to be used by compressors that support parallelization. Omit to use compressors default. Most useful (and required) for opting into xzs threading, usually with --threads=0 for all available cores. pbzip2 and pigz are parallel by default, and setting this value allows limiting the number of threads they use.
--notemp : The generated archive will not extract the files to a temporary directory, but in a new directory created in the current directory. This is better to distribute software packages that may extract and compile by themselves (i.e. launch the compilation through the embedded script).
--current : Files will be extracted to the current directory, instead of in a subdirectory. This option implies --notemp above.
--follow : Follow the symbolic links inside of the archive directory, i.e. store the files that are being pointed to instead of the links themselves.
--append (new in 2.1.x) : Append data to an existing archive, instead of creating a new one. In this mode, the settings from the original archive are reused (compression type, label, embedded script), and thus dont need to be specified again on the command line.
--header : Makeself uses a separate file to store the header stub, called makeself-header.sh . By default, it is assumed that it is stored in the same location as makeself.sh. This option can be used to specify its actual location if it is stored someplace else.
--cleanup : Specify a script that is run when execution is interrupted or finishes successfully. The script is executed with the same environment and initial script_args as startup_script .
--copy : Upon extraction, the archive will first extract itself to a temporary directory. The main application of this is to allow self-contained installers stored in a Makeself archive on a CD, when the installer program will later need to unmount the CD and allow a new one to be inserted. This prevents Filesystem busy errors for installers that span multiple CDs.
--nox11 : Disable the automatic spawning of a new terminal in X11.
--nowait : When executed from a new X11 terminal, disable the user prompt at the end of the script execution.
--nomd5 and --nocrc : Disable the creation of a MD5 / CRC checksum for the archive. This speeds up the extraction process if integrity checking is not necessary.
--sha256 : Adds a SHA256 checksum for the archive. This is in addition to the MD5 / CRC checksums unless --nomd5 is also used.
--lsm file : Provide and LSM file to makeself, that will be embedded in the generated archive. LSM files are describing a software package in a way that is easily parseable. The LSM entry can then be later retrieved using the --lsm argument to the archive. An example of a LSM file is provided with Makeself.
--tar-extra opt : Append more options to the tar command line.
For instance, in order to exclude the .git directory from the packaged archive directory using the GNU tar , one can use makeself.sh --tar-extra '--exclude=.git' ...
--keep-umask : Keep the umask set to shell default, rather than overriding when executing self-extracting archive.
--packaging-date date : Use provided string as the packaging date instead of the current date.
--license : Append a license file.
--nooverwrite : Do not extract the archive if the specified target directory already exists.
--header file : Specify the location of the header script file (default makeself-header.sh )
--help-header file : Add a header to the archives --help output.
archive_dir is the name of the directory that contains the files to be archived
file_name is the name of the archive to be created
label is an arbitrary text string describing the package. It will be displayed while extracting the files.
startup_script is the command to be executed from within the directory of extracted files. Thus, if you wish to execute a program contain in this directory, you must prefix your command with ./ . For example, ./program will be fine. The script_args are additional arguments for this command.
Here is an example, assuming the user has a package image stored in a /home/joe/mysoft , and he wants to generate a self-extracting package named mysoft.sh , which will launch the setup script initially stored in /home/joe/mysoft :
makeself.sh /home/joe/mysoft mysoft.sh 'Joe's Nice Software Package' ./setup
Here is also how I created the makeself.run archive which contains the Makeself distribution :
makeself.sh --notemp makeself makeself.run 'Makeself by Stephane Peter' echo 'Makeself has extracted itself'
Archives generated with Makeself can be passed the following arguments:
--keep : Prevent the files to be extracted in a temporary directory that will be removed after the embedded scripts execution. The files will then be extracted in the current working directory and will stay here until you remove them.
--verbose : Will prompt the user before executing the embedded command
--target dir : Allows to extract the archive in an arbitrary place.
--nox11 : Do not spawn a X11 terminal.
--confirm : Prompt the user for confirmation before running the embedded command.
--info : Print out general information about the archive (does not extract).
--lsm : Print out the LSM entry, if it is present.
--list : List the files in the archive.
--check : Check the archive for integrity using the embedded checksums. Does not extract the archive.
--nochown : By default, a chown -R command is run on the target directory after extraction, so that all files belong to the current user. This is mostly needed if you are running as root, as tar will then try to recreate the initial user ownerships. You may disable this behavior with this flag.
--tar : Run the tar command on the contents of the archive, using the following arguments as parameter for the command.
--noexec : Do not run the embedded script after extraction.
--noexec-cleanup : Do not run the embedded cleanup script.
--nodiskspace : Do not check for available disk space before attempting to extract.
--cleanup-args : Specify arguments to be passed to the cleanup script. Wrap value in quotes to specify multiple arguments.
Any subsequent arguments to the archive will be passed as additional arguments to the embedded command. You must explicitly use the -- special command-line construct before any such options to make sure that Makeself will not try to interpret them. Startup Script
The startup script must be a regular Shell script.
Within the startup script, you can use the $USER_PWD variable to get the path of the folder from which the self-extracting script is executed. This is especially useful to access files that are located in the same folder as the script, as shown in the example below.
my-self-extracting-script.sh --fooBarFileParameter foo.bar Building and Testing
Clone the git repo and execute git submodule update --init --recursive to obtain all submodules.
To make a release: make
To run all tests: make test Maven Usage
Makeself is now supported by the following maven plugin makeself-maven-plugin. Please refer to project for usage and report any bugs in regards to maven plugin on that project. License
Makeself itself is covered by the GNU General Public License (GPL) version 2 and above. Archives generated by Makeself dont have to be placed under this license (although I encourage it ;-)), since the archive itself is merely data for Makeself. Contributing Self-extracting Archive Macosx
I will gladly consider merging your pull requests on the GitHub repository. However, please keep the following in mind:
One of the main purposes of Makeself is portability. Do not submit patches that will break supported platforms. The more platform-agnostic, the better.
Please explain clearly what the purpose of the patch is, and how you achieved it. Download
Get the latest official distribution here (version 2.4.2).
The latest development version can be grabbed from GitHub. Feel free to submit any patches there through the fork and pull request process. Version history
v1.0: Initial public release
v1.1: The archive can be passed parameters that will be passed on to the embedded script, thanks to John C. Quillan
v1.2: Cosmetic updates, support for bzip2 compression and non-temporary archives. Many ideas thanks to Francois Petitjean.
v1.3: More patches from Bjarni R. Einarsson and Francois Petitjean: Support for no compression ( --nocomp ), script is no longer mandatory, automatic launch in an xterm, optional verbose output, and -target archive option to indicate where to extract the files.
v1.4: Many patches from Francois Petitjean: improved UNIX compatibility, automatic integrity checking, support of LSM files to get info on the package at run time..
v1.5.x: A lot of bugfixes, and many other patches, including automatic verification through the usage of checksums. Version 1.5.5 was the stable release for a long time, even though the Web page didnt get updated ;-). Makeself was also officially made a part of the Loki Setup installer, and its source is being maintained as part of this package.
v2.0: Complete internal rewrite of Makeself. The command-line parsing was vastly improved, the overall maintenance of the package was greatly improved by separating the stub from makeself.sh. Also Makeself was ported and tested to a variety of Unix platforms.
v2.0.1: First public release of the new 2.0 branch. Prior versions are officially obsoleted. This release introduced the --copy argument that was introduced in response to a need for the UT2K3 Linux installer.
v2.1.0: Big change : Makeself can now support multiple embedded tarballs, each stored separately with their own checksums. An existing archive can be updated with the --append flag. Checksums are also better managed, and the --nochown option for archives appeared.
v2.1.1: Fixes related to the Unix compression (compress command). Some Linux distributions made the insane choice to make it unavailable, even though gzip is capable of uncompressing these files, plus some more bugfixes in the extraction and checksum code.
v2.1.2: Some bug fixes. Use head -n to avoid problems with POSIX conformance.
v2.1.3: Bug fixes with the command line when spawning terminals. Added --tar , --noexec for archives. Added --nomd5 and --nocrc to avoid creating checksums in archives. The embedded script is now run through eval. The --info output now includes the command used to create the archive. A man page was contributed by Bartosz Fenski.
v2.1.4: Fixed --info output. Generate random directory name when extracting files to . to avoid problems. Better handling of errors with wrong permissions for the directory containing the files. Avoid some race conditions, Unset the $CDPATH variable to avoid problems if it is set. Better handling of dot files in the archive directory.
v2.1.5: Made the md5sum detection consistent with the header code. Check for the presence of the archive directory. Added --encrypt for symmetric encryption through gpg (Eric Windisch). Added support for the digest command on Solaris 10 for MD5 checksums. Check for available disk space before extracting to the target directory (Andreas Schweitzer). Allow extraction to run asynchronously (patch by Peter Hatch). Use file descriptors internally to avoid error messages (patch by Kay Tiong Khoo).
v2.1.6: Replaced one dot per file progress with a realtime progress percentage and a spinning cursor. Added --noprogress to prevent showing the progress during the decompression. Added --target dir to allow extracting directly to a target directory. (Guy Baconniere)
v2.2.0: First major new release in years! Includes many bugfixes and user contributions. Please look at the project page on Github for all the details.
v2.3.0: Support for archive encryption via GPG or OpenSSL. Added LZO and LZ4 compression support. Options to set the packaging date and stop the umask from being overriden. Optionally ignore check for available disk space when extracting. New option to check for root permissions before extracting.
v2.3.1: Various compatibility updates. Added unit tests for Travis CI in the GitHub repo. New --tar-extra , --untar-extra , --gpg-extra , --gpg-asymmetric-encrypt-sign options.
v2.4.0: Added optional support for SHA256 archive integrity checksums.
v2.4.2: New cleanup and cleanup-args arguments for cleanup scripts. Added threading support for supported compressors. Now supports zstd compression. Links Winrar Self Extracting Archive Software
Check out the Loki Setup installer, used to install many Linux games and other applications, and of which I am the co-author. Since the demise of Loki, I am now the official maintainer of the project, and it is now being hosted here on GitHub.
Bjarni R. Einarsson also wrote the setup.sh installer script, inspired by Makeself. Check it out ! Contact
This script was written by Stphane Peter (megastep at megastep.org). Any enhancements and suggestions are welcome.
Contributions were included from John C. Quillan, Bjarni R. Einarsson,Francois Petitjean, Ryan C. Gordon, and many contributors on GitHub. If you think I forgotyour name, dont hesitate to contact me.
This project is now hosted on GitHub. Feel free to submit patches and bug reports on the project page.
A self-extracting archive ( SFX/SEA ) is a computerexecutable program which contains compressed data in an archive file combined with machine-executable program instructions to extract this information on a compatible operating system and without the necessity for a suitable extractor to be already installed on the target computer. The executable part of the file is known as the stub and the non-executable part the archive.
Self-extracting files are very convenient, if you want to give the compressed file to someone, but you don't know if they have the compression program that can decompress the file. You can also use self-extracting to distribute your own software. For example, the WinRAR installation program is made using the graphical GUI RAR self-extracting module Default.sfx. A self-extracting archive created using 7-Zip Overview [ edit ]
It incorporates an executable file module, a module used to run uncompressed files from compressed files. Such a compressed file does not require an external program to decompress the contents of the self-extracting file, and it can run the operation itself. However, WinRAR can still treat self-extracting files as any other compressed files. So if you are unwilling to run the self-extracting file you received (for example, when it may contain a virus), you can use WinRAR to view or decompress its content.
On executing a self-extracting archive under an operating system which supports it, the archive contents are extracted and stored as files on the disk. Often, the embedded self-extractor supports a number of command line arguments to control the behaviour, i.e. to specify the target location or select only specific files to be extracted.
Non-self-extracting archives contain the archived files only and therefore need to be extracted with a compatible program. Self-extracting archives cannot self-extract under a different operating system but most often can still be opened with a suitable extractor as this tool will disregard the executable part of the file and instead extract only the archive resource. In some cases this requires the self-extracting executable to be renamed to hold a file extension associated with the corresponding packer. Self-extracting files usually have an .exe extension like other executable files.
For example, an archive may be called somefiles.zip - it can be opened under any operating system by a suitable archive manager which supports both the file format and compression algorithm used. It could alternatively be converted into somefiles.exe which will self-extract on a machine running Microsoft Windows without the need for that suitable archive manager. It will not self-extract under Linux, but can be opened with a suitable Linux archive manager.
There are several functionally equivalent but incompatible archive file formats, including ZIP, RAR, 7z and many others. Some programs can manage (create, extract, or modify) only one type of archive whilst many others can handle multiple formats. There is additionally a distinction between the file format and compression algorithm used. A single file format, such as 7z, can support multiple different compression algorithms including LZMA, LZMA2, PPMd and BZip2. For a decompression utility to correctly expand an archive of either the self-extracting or standard variety, it must be able to operate on both the file format and algorithm used. The exact executable code placed at the beginning of a self-extracting archive may therefore need to be varied depending on what options were used to create the archive. The decompression routines will be different for a LZMA 7z archive when compared with a LZMA2 7z archive, for example.
Several programs can create self-extracting archives. For Windows there is WinZip, WinRAR, 7-Zip, WinUHA, KGB Archiver, Make SFX, the built-in IExpress wizard and many others, some experimental. For Macintosh there are StuffIt, The Unarchiver, and 7zX. There are also programs that create self-extracting archives on Unix as shell scripts which utilizes programs like tar and gzip (which must be present in destination system). Others (like 7-Zip or RAR) can create self-extracting archives as regular executables in ELF format. An early example of a self-extracting archive was the Unix shar archive in which one or more text files were combined into a shell script that when executed recreated the original files.
Self-extracting archives can be used to archive any number of data as well as executable files. They must be distinguished from executable compression, where the executable file contains a single executable only and running the file does not result in the uncompressed file being stored on disk, but in its code being executed in memory after decompression. Advantages [ edit ]
Archiving files rather than sending them separately allows several related files to be combined into a single resource. It also has the benefit of reducing the size of files not already efficiently compressed (many compression algorithms cannot make already compressed data any smaller. Compression will therefore usually reduce the size of a plain text document but hardly affect a JPEG picture or a word processor document. This is because most modern Word Processor file formats now involve a certain level of compression already). Self-extracting archives also extend the advantages of compressed archives to users who do not have the necessary programs installed on their computer to otherwise extract their contents, but are running a compatible operating system. However, for users who do have archive managing software, a self-extracting archive may still be slightly more convenient.
Self-extracting archives also allow for their contents to be encrypted for security, provided the chosen underlying compression algorithm and format allow for it. In many cases though the file and directory names are not part of the encryption and can be seen by anyone, even without the key or password. Additionally, some encryption algorithms rely on there being no known partial plaintexts available so if an attacker is able to guess part of the contents of the files from their names or context alone they may be able to break the encryption on the entire archive with only a reasonable amount of computing power and time. Care therefore needs to be taken or a more suitable encryption algorithm used. Disadvantages [ edit ]
A disadvantage of self-extracting archives is that running executables of unverified reliability, for example when sent as an email attachment or downloaded from the Internet, may be a security risk. An executable file described as a self-extracting archive may actually be a malicious program. One protection against this is to open it with an archive manager instead of executing it (losing the minor advantage of self-extraction); the archive manager will either report the file as not an archive or will show the underlying metadata of the executable file - a strong indication that the file is not actually a self-extracting archive.
Additionally, some systems for distributing files do not accept executable files in order to prevent the transmission of malicious programs. These systems disallow self-extracting archive files unless they are cumbersomely renamed by the sender to, say, somefiles.exx, and later renamed back again by the recipient. This technique is gradually becoming less effective however as an increasing number of security suites and antivirus software packages instead scan file headers for the underlying format rather than relying on a correct file extension. These security systems will not be fooled by an incorrect file extension and are particularly prevalent in the analysis of email attachments.
Self-extracting archives will only run under the operating system with which they are compatible. Also, since they must include executable code to handle the extraction of the contained archive file, they are a little larger than the original archive. Preparation [ edit ] Preparing Files [ edit ]
First, gather all the files that need to be decompressed into a folder, then select all and click the 'Compress' option in the right-click menu. Though the actual button might be different, most systems support the compression. However, some systems will compress the file into zip document, while some others will compress the file into rar document. As a matter of fact, most systems allow users to decide what kind of doc would the compressed file be, as users can modulate the setting in the personalized box.
Note: The general software cracking step is to copy the cracked file to the software installation directory to overwrite the original file, and then execute some programs such as the memory registration machine or registry import program. In this example, all files must be overwritten and copied to the software installation directory, and then execute FP and reg to import the registration data. Generating format [ edit ]
In the pop-up dialog box, select the appropriate compression rate in the 'Compression Mode', and check the 'Create a self-extracting compressed file' option, and then click 'Advanced Self-extracting options'.
Compression rate, mostly known as data compression rate or compression power is a measurement of the relative reduction in size of data representation produced by a data compression algorithm. Users can calculate the rate by self, with the equation:
Compression Ratio = Uncompressed Size / Compressed Size
Typically, for high compression rates, PDE-based approach does not only give far better results than the widely-used JPEG standard, but can even beat the quality of the highly optimised JPEG 2000 codec (Galic, Zovko-Cihlar, 2012) [1] . Other than that, many computer science scholars focus on how to optimize the compression progress, in order to save calculation power and improve the functionality. Scholars also asserted that acceptable compression ratios for 2,048, 1,024, and 512 matrices are 25:1, 20:1, and 10:1, respectively, based on a mean-square error of 0.02, based on a research that was performed using the full-frame bit-allocation compression technique on 78 radiological images, including digitized radiographs, computed radiographs, and computed tomography images (Lo, and Huang, 1986 [2] ). Setting information [ edit ]
The setting here is the focus, mainly the four modules of 'General', 'Mode', 'Text and Icon', and 'License'.
In the 'General' module, you should set the location where the file is automatically decompressed and whether to automatically execute what program before and after decompression. Because the files are to be automatically extracted to the software installation directory, the original software installation path, namely ProgramfilesFpinger should be entered in the 'Extract path' column. Needless to say, 'run after decompression' and 'run before decompression' have been written very clearly. Here you need to automatically display 'Description, txt' before decompression, and execute FP and reg to import registration information after all files are decompressed to the destination folder.
Tips: Only Fpinger is entered here because the option 'Create in'ProgramFiles' has been selected by default. At this time, RAR can automatically detect which partition the current operating system is installed on, that is, if your XP installation In the E partition, the files will eventually be automatically decompressed into the E:ProgramFilesFpinger directory, which is a very useful feature for those who have installed multiple systems.
The 'Mode' module mainly sets how to deal with the decompressed file when it encounters a file with the same name at the destination and whether to display default information for adjustment. The meaning of 'quiet mode' is whether to display information such as the default decompression path during the entire decompression process. Here, since the decryption package is made, select 'Hide All', that is, no prompt window will be displayed.
The 'overwrite method' is better understood. Similarly, for this decryption package, when it encounters the file with the same name, it should be overwritten directly, so select 'overwrite all files'. Self Extracting Archive Mac
'Text and icon', as the name suggests, this is to set the reminder message and the icon of the decompression package during decompression. 'Self-extracting file window title' will appear in the title bar during decompression, and 'displayed text' will appear at the decompression prompt of RAR.
'License' is the 'software license agreement' that you can see every time you install the software. Just fill in the content you need. If you want, you can also put the software's function introduction here.
To create a self-extracting file from the command line, you can use the -sfx switch to create a new compressed file, or s to convert an existing compressed file into a self-extracting file. In the WinRAR graphical interface, there are two ways, one is when you want to create a new compressed file, select the 'create self-extracting file' option from the compressed file name and parameter dialog box, and the other is to enter the existing compressed file and click ' Self-extracting' button.
WinRAR contains several self-extracting modules, all self-extracting modules have .sfx extension and must be placed in the folder where WinRAR is located. The default WinRAR always uses the Default.sfx module, but you can also directly specify other module names with the '-sfx' switch or the 'S' command. For example, to convert myarchive.rar to self-extracting format, use WinCon.SFX module to run:
WinRAR SWinCon.SFX myarchive.rar See also [ edit ]
Kolmogorov complexity, a theoretical lower bound on the size of a self-extracting archive References [ edit ]
Gali, I., Zovko-Cihlar, B., Rimac-Drlje, S (April 2012). 'Computer image quality selection between JPEG, JPEG 2000 and PDE compression'. In 2012 19th International Conference on Systems, Signals and Image Processing (IWSSIP) . (pp. 437-441).: IEEE. CS1 maint: multiple names: authors list (link)
Lo, S. C., Huang, H. K. (1986). 'Compression of radiological images with 512, 1,024, and 2,048 matrices'. Radiology . 161(2): 519-525. CS1 maint: multiple names: authors list (link) External links [ edit ] Self Extracting File
http://www.jackmccarthy.com/malware/WinRAR_Archive_Creation.htm (About SFX)
http://hem.bredband.net/magli143/exo/ for 6502/Z80/6809 executables Winrar Self Extracting Archive Retrieved from 'https://en.wikipedia.org/w/index.php?title=Self-extracting_archiveoldid=979856741'