HOME

TheInfoList



OR:

A self-extracting archive (SFX or SEA) is a
computer A computer is a machine that can be programmed to carry out sequences of arithmetic or logical operations ( computation) automatically. Modern digital electronic computers can perform generic sets of operations known as programs. These prog ...
executable 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 a '' decompressor stub''. Self-extracting files are used to share compressed files with a party that may not necessarily have the software to decompress a regular archive. Users can also use self-extracting to distribute their own software. For example, the WinRAR installation program is made using the graphical GUI RAR self-extracting module Default.sfx.


Overview

Self-extracting archives contains 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, file archivers like
WinRAR WinRAR is a trialware file archiver utility for Windows, developed by Eugene Roshal of win.rar GmbH. It can create and view archives in RAR or ZIP file formats, and unpack numerous archive file formats. To enable the user to test the integrit ...
can still treat self-extracting files as any other compressed files. By using a file archiver, users can view or decompress self-extracting files they received without running executable code (for example, if they are concerned about viruses). A self-extracting archive is extracted and stored on a disk when executed under an
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs. Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
that supports it. Many embedded self-extractors support a number of command line arguments, such as specifying the target location or selecting only specific files. Unlike self-extracting archives, non-self-extracting archives only contain archived files and must be extracted with a program that is compatible with them. While self-extracting archives cannot be extracted under another operating system, they can usually still be opened using a suitable extractor as this tool will disregard the executable part of the file and extract only the archive resource. The self-extracting executable may need to be renamed to contain a file extension associated with the corresponding packer; archive file formats known to support this include
ARJ ARJ (Archived by Robert Jung) is a software tool designed by Robert K. Jung for creating high-efficiency compressed file archives. ARJ is currently on version 2.86 for MS-DOS and 3.20 for Microsoft Windows and supports 16-bit, 32-bit and 64-bit ...
and ZIP. Typically, self-extracting files have an .exe extension, just like any other executable file. 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 may also be converted into somefiles.exe, which will self-extract under
Microsoft Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
. It will not self-extract under
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, whi ...
, but can be opened with a suitable archive manager. Files that are not recognized as archives by archive managers due to their executable extension can be renamed into .zip. This works for ZIP archives due to the way the ZIP header is defined, but not necessarily for other less flexible archive format. There are several functionally equivalent but incompatible archive file formats, including ZIP, RAR, 7z and many others. Many programs can handle multiple types of archives, whereas others can create, extract, or modify only one type. Additionally, there is a distinction between the file format and the compression algorithm. A single file format, such as 7z, can support multiple different compression algorithms including LZMA, LZMA2,
PPMd Prediction by partial matching (PPM) is an adaptive statistical data compression technique based on context modeling and prediction. PPM models use a set of previous symbols in the uncompressed symbol stream to predict the next symbol in the str ...
and BZip2. Decompression utilities must be able to handle both the file format and the algorithm used when expanding self-extracting or standard archives. Depending on the options used to create a self-extracting archive, the executable code placed at the beginning may vary. If you compare a LZMA 7z archive to a LZMA2 7z archive, for example, the decompression routines will differ Several programs can create self-extracting archives. Among the
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for se ...
archivers are
WinZip WinZip is a trialware file archiver and compressor for Microsoft Windows, macOS, iOS and Android. It is developed by WinZip Computing (formerly Nico Mak Computing), which is owned by Corel Corporation. The program can create archives in Zip f ...
,
WinRAR WinRAR is a trialware file archiver utility for Windows, developed by Eugene Roshal of win.rar GmbH. It can create and view archives in RAR or ZIP file formats, and unpack numerous archive file formats. To enable the user to test the integrit ...
, 7-Zip, WinUHA,
KGB Archiver KGB Archiver is a discontinued file archiver and data compression utility that employs the PAQ6 compression algorithm. Written in Visual C++ by Tomasz Pawlak, KGB Archiver is designed to achieve a very high compression ratio. It has ten level ...
, Make SFX, the built-in
IExpress IExpress, a component of Windows 2000 and later versions of the operating system, is used to create self-extracting packages from a set of files. Such packages can be used to install software. Overview IExpress (IEXPRESS.EXE) can be used for dis ...
wizard and many others, some experimental. Macintosh users may choose StuffIt,
The Unarchiver The Unarchiver is a proprietary freeware data decompression utility, which supports more formats than Archive Utility (formerly known as BOMArchiveHelper), the built-in archive unpacker program in macOS. It can also handle filenames in various ch ...
, or 7zX as their archivers. There are also programs that create self-extracting archives on
Unix Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, ...
as
shell scripts A shell script is a computer program designed to be run by a Unix shell, a command-line interpreter. The various dialects of shell scripts are considered to be scripting languages. Typical operations performed by shell scripts include file man ...
, which utilize programs like tar and gzip (which must be present in the destination system). Others (like 7-Zip or
RAR RAR or Rar may refer to: * Radio acoustic ranging, a non-visual technique for determining a ship's position at sea * "rar", the ISO 639-2 code for the Cook Islands Māori language * RAR (file format), a proprietary compressed archive file format i ...
) can create self-extracting archives as regular executables in ELF format. One of the early examples of self-extracting archives is the Unix
shar In the Unix operating system, shar (an abbreviation of ''shell archive'') is an archive format created with the Unix shar utility. A shar file is a type of self-extracting archive, because it is a valid shell script, and executing it will re ...
archive, which combined a number of text files into a shell script that recreated their original content after being executed. It is possible to archive both data and executable files with self-extracting archives. They must be distinguished from
executable compression Executable compression is any means of compressing an executable file and combining the compressed data with decompression code into a single executable. When this compressed executable is executed, the decompression code recreates the original ...
, where the executable file only contains a single executable, 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

Archiving files rather than sending them separately allows several related files to be combined into a single resource. Another benefit is that it reduces the size of files that aren't already efficiently compressed (most compression algorithms cannot reduce the size of already compressed files. Compression usually reduces the size of
plain text In computing, plain text is a loose term for data (e.g. file contents) that represent only characters of readable material but not its graphical representation nor other objects (floating-point numbers, images, etc.). It may also include a limit ...
documents, but rarely affects JPEGs or
word processor A word processor (WP) is a device or computer program that provides for input, editing, formatting, and output of text, often with some additional features. Early word processors were stand-alone devices dedicated to the function, but current ...
documents, as many modern word processors already involve a certain level of compression). In addition to the benefits of compressed archives, self-extracting archives can also be used by users without the necessary programs for extracting their contents, as long as they run a compatible operating system. A self-extracting archive may still be more convenient for users who do have archive management software.   As long as the underlying compression algorithm and format allow it, self-extracting archives can also be encrypted for security. It is important to note, however, that in many cases, the file and directory names are not included in the encryption and can be viewed by anyone without a key or password. If a person can guess part of the contents of the files from their names or context alone, an attacker may be able to break the encryption on the entire archive with only a reasonable amount of computing power and time. A more appropriate encryption algorithm should be used for important files.


Disadvantages

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 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.exe, 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 family and platform with which they are compatible, making it more difficult to extract their contents under other systems. Examples of self-extracting archives, which can be run on multiple targets (such as
DOS DOS is shorthand for the MS-DOS and IBM PC DOS family of operating systems. DOS may also refer to: Computing * Data over signalling (DoS), multiplexing data onto a signalling channel * Denial-of-service attack (DoS), an attack on a communicat ...
and
CP/M CP/M, originally standing for Control Program/Monitor and later Control Program for Microcomputers, is a mass-market operating system created in 1974 for Intel 8080/ 85-based microcomputers by Gary Kildall of Digital Research, Inc. Initi ...
) rather than only the archive contents to be usable under multiple systems, are very rare, because they require the embedded decompressor stub to be a fat binary. Also, since the self-extracting archives must include executable code to handle the extraction of the contained archive file, they are slightly larger than the original archive.


See also

* Installer *
Self-booting disk A self-booting disk is a floppy disk for home or personal computers that loads directly into a standalone application when the system is turned on, bypassing the operating system. This was common, even standard, on some computers in the late 197 ...
*
Shar In the Unix operating system, shar (an abbreviation of ''shell archive'') is an archive format created with the Unix shar utility. A shar file is a type of self-extracting archive, because it is a valid shell script, and executing it will re ...
*
Kolmogorov complexity In algorithmic information theory (a subfield of computer science and mathematics), the Kolmogorov complexity of an object, such as a piece of text, is the length of a shortest computer program (in a predetermined programming language) that produ ...
, a theoretical lower bound on the size of a self-extracting archive *
WinRAR WinRAR is a trialware file archiver utility for Windows, developed by Eugene Roshal of win.rar GmbH. It can create and view archives in RAR or ZIP file formats, and unpack numerous archive file formats. To enable the user to test the integrit ...
*
WinZip WinZip is a trialware file archiver and compressor for Microsoft Windows, macOS, iOS and Android. It is developed by WinZip Computing (formerly Nico Mak Computing), which is owned by Corel Corporation. The program can create archives in Zip f ...


References

{{Reflist, refs= {{cite web , title=Generic CP/M , author-first=John C. , author-last=Elliott , date=2012-06-20 , orig-date=2005-01-05 , work=Seasip.info , url=https://www.seasip.info/Cpm/software/fatbnsea.com , access-date=2021-12-12 , url-status=live , archive-url=https://web.archive.org/web/20211117090912/http://www.seasip.info/Cpm/software/gencpm.html , archive-date=2021-11-17 , quote= ��Self-extracting archives are .COM files containing a number of smaller files. When you run one, it will create its smaller files ��The self-extract archive programs will run under
DOS DOS is shorthand for the MS-DOS and IBM PC DOS family of operating systems. DOS may also refer to: Computing * Data over signalling (DoS), multiplexing data onto a signalling channel * Denial-of-service attack (DoS), an attack on a communicat ...
(2 or later) or
CP/M CP/M, originally standing for Control Program/Monitor and later Control Program for Microcomputers, is a mass-market operating system created in 1974 for Intel 8080/ 85-based microcomputers by Gary Kildall of Digital Research, Inc. Initi ...
, with identical effects. To extract them under
Unix Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, ...
, you can use ZXCC […
PMSFX21X.COM
�� PMSFX is the program that was used to generate these self-unpacking archives. This version (2.11) can generate archives which unpack themselves under CP/M or DOS. You will need PMARC to use PMSFX. ��

/ref> {{cite newsgroup , title=PMSFX 2 , author-first=John C. , author-last=Elliott , date=1997-01-18 , orig-date=1997-01-11 , newsgroup=comp.os.cpm , url=https://groups.google.com/g/comp.os.cpm/c/tmvc1Wzz28A/m/s6GzKZKqSk0J , access-date=2021-12-13 , url-status=live , archive-url=https://web.archive.org/web/20211213022339/https://groups.google.com/g/comp.os.cpm/c/tmvc1Wzz28A/m/s6GzKZKqSk0J , archive-date=2021-12-13 , quote= ��I've written a version of PMSFX that produces .COM files unpackable under
DOS DOS is shorthand for the MS-DOS and IBM PC DOS family of operating systems. DOS may also refer to: Computing * Data over signalling (DoS), multiplexing data onto a signalling channel * Denial-of-service attack (DoS), an attack on a communicat ...
and
CP/M CP/M, originally standing for Control Program/Monitor and later Control Program for Microcomputers, is a mass-market operating system created in 1974 for Intel 8080/ 85-based microcomputers by Gary Kildall of Digital Research, Inc. Initi ...
(the first three bytes are both legal Z80 code, legal
8086 The 8086 (also called iAPX 86) is a 16-bit microprocessor chip designed by Intel between early 1976 and June 8, 1978, when it was released. The Intel 8088, released July 1, 1979, is a slightly modified chip with an external 8-bit data bus (allo ...
code and legal PMA header). You can find it ��as a self-extracting archive. ��}
{{cite newsgroup , title=CP/M info program , author-first=John C. , author-last=Elliott , date=2009-10-27 , newsgroup=comp.os.cpm , url=https://groups.google.com/g/comp.os.cpm/c/RMWG4qSdbM0/m/UGll0BzoiW0J , access-date=2021-12-13 , url-status=live , archive-url=https://web.archive.org/web/20211213154548/https://groups.google.com/g/comp.os.cpm/c/RMWG4qSdbM0/m/UGll0BzoiW0J , archive-date=2021-12-13 , quote= ��More fun can be had with self-extract PMArc archives. Start one with ��defb 0EBh, 018h, '-pms-' ��and it's treated as a valid archive by the PMA utilities, sends
8086 The 8086 (also called iAPX 86) is a 16-bit microprocessor chip designed by Intel between early 1976 and June 8, 1978, when it was released. The Intel 8088, released July 1, 1979, is a slightly modified chip with an external 8-bit data bus (allo ...
processors to 011Ah, and Z80 processors to 0130h. ��}
{{cite newsgroup , title=MS-DOS & CP/M-Compatible Binaries , author-first1=William "Bill" Albert , author-last1=Wilkinson , author-first2=Cory , author-last2=Seligman , author-first3=Richard F. , author-last3=Drushel , author-first4=Jonathan Graham , author-last4=Harston , author-first5=John C. , author-last5=Elliott , date=1999-02-17 , newsgroup=comp.os.cpm , url=https://groups.google.com/g/comp.os.cpm/c/nSiKFzq1gGE/m/PzpfpSbNx34J , access-date=2021-12-13 , url-status=live , archive-url=https://web.archive.org/web/20211213055749/https://groups.google.com/g/comp.os.cpm/c/nSiKFzq1gGE/m/PzpfpSbNx34J , archive-date=2021-12-13 {{cite book , title=NWDOS-TIPs — Tips & Tricks rund um Novell DOS 7, mit Blick auf undokumentierte Details, Bugs und Workarounds , work=MPDOSTIP , author-first=Matthias R. , author-last=Paul , date=1997-07-30 , orig-date=1994-05-01 , edition=3 , version=Release 157 , language=de , chapter=Chapter I.2. Novell DOS 7 Updates: iii. Entpacken der Updates , url=http://www.antonis.de/dos/dos-tuts/mpdostip/html/nwdostip.htm , access-date=2014-08-06 , url-status=live , archive-url=https://web.archive.org/web/20170910194752/http://www.antonis.de/dos/dos-tuts/mpdostip/html/nwdostip.htm , archive-date=2017-09-10 , quote=Möchten Sie mit ARJ arbeiten, können Sie die .EXE-Datei auch einfach zu .ARJ umbenennen. ARJ kann darin enthaltene Dateien mit den üblichen Optionen entpacken (innerhalb des
Norton Commander Norton Commander (NC) is a discontinued prototypical orthodox file manager (OFM), written by John Socha and released by Peter Norton Computing (later acquired in 1990 by the Symantec corporation). NC provides a text-based user interface for m ...
s ist dies allerdings wegen des anderen Dateikopfes nicht möglich). (NB. NWDOSTIP.TXT is a comprehensive work on Novell DOS 7 and OpenDOS 7.01, including the description of many undocumented features and internals. It is part of the author's yet larger MPDOSTIP.ZIP collection maintained up to 2001 and distributed on many sites at the time. The provided link points to a HTML-converted older version of the NWDOSTIP.TXT file.
A yet older version 155 from 1997-05-13 of the 1997-07-15 distribution archive. -->
/ref> {{cite web , title=Firmware 2.00 für Sony Alpha DSLR-A850/DSLR-A900 , language=de , author-first=Matthias R. , author-last=Paul , date=2010-12-03 , work=Mi-Fo , url=http://www.mi-fo.de/forum/index.php?showtopic=28396&pid=269906&start=#entry269906 , url-status=dead , archive-url=https://web.archive.org/web/20160807001642/http://www.mi-fo.de/forum/index.php?showtopic=28396&st=20&start=20 , archive-date=2016-08-07 , quote= ��bei modernen Systemen ist die Funktionalität, in ZIP-Archive hineinzugehen, als wären es Unterverzeichnisse im Dateisystem, voll in die Shell integriert, so daß man dafür gar kein eigenständiges Entpackprogramm mehr bemühen muß, wie das früher der Fall war. Das funktioniert auch unter Windows (Explorer) schon seit fünfzehn Jahren so (Windows 95), und selbst unter DOS läßt sich sowas problemlos für die Kommandozeile einrichten, bzw. war in Dateimanagern wie dem Norton Commander schon vor bald zwanzig Jahren integriert. ��Es ist eine wirklich sehr schlechte Idee, ausführbare Dateien (wie .EXE-Dateien) über das Netz verteilen zu wollen - im Grunde halte ich das für unverantwortlich, gerade wenn man auch unbedarfte "Nur-Anwender" in der Zielgruppe hat. Ausführbare Dateien stellen ein erhebliches Sicherheitsrisiko dar, denn sie können Viren enthalten (und tun dies auch oft). Deshalb blockieren viele Virenscanner und Firewalls sowas, und die Anwender, die sich an die Instruktionen auf Sonys Webseite halten (gerade, weil sie nichts falsch machen möchten), werden Schwierigkeiten haben, die Datei überhaupt herunterladen zu können. Die Leute, die es dennoch schaffen, werden u.U. mit dem nächsten Problem konfrontiert, nämlich der Tatsache, daß der spezielle Selbstentpacker, der in der .EXE-Datei integriert ist, nur unter bestimmten Versionen von Windows funktioniert. Manche Windows x64-Versionen, manche Windows Starter-Versionen und manche älteren Windows-Versionen werden nicht unterstützt. Das muß nicht so sein, man müßte einfach nur einen Selbstentpacker verwenden, der mit allen Windows-Versionen kompatibel ist. ��

https://web.archive.org/web/20220528152130/https://www.so-fo.de/t28396f89-Firmware-fuer-Sony-Alpha-DSLR-A-DSLR-A-1.html#msg269906]
{{cite web , title=αcτµαlly pδrταblε εxεcµταblε (Ape) , author-first=Justine Alexandra Roberts , author-last=Tunney , date=2020-08-24 , url=https://justine.lol/ape.html , access-date=2021-09-12 , url-status=live , archive-url=https://web.archive.org/web/20210912190108/https://justine.lol/ape.html , archive-date=2021-09-12


External links

* http://www.winzip.com * http://www.7-zip.org * http://www.jackmccarthy.com/malware/WinRAR_Archive_Creation.htm (About SFX) * https://bitbucket.org/magli143/exomizer/wiki/Home for 6502/Z80/6809 executables * http://74.cz/make-sfx/ Data compression