NSIS SFX Package Builder

From NSIS Wiki
Jump to navigationJump to search
Author: Red Wine (talk, contrib)


Links

Download
Debate


Description

Just another sfx package creator written in whole using NSIS scripting lang. The benefit of its use is that it builds small self extracting packages using lzma compression, thus, the implementation of the small NSIS exe header. Moreover, it has a simple, straight forward, a few clicks mode user interface.
The application consists mainly of two instances called NSIS Sfx Package Builder and NSIS Sfx Package Extractor.
Builder is the user interface where users with just a few clicks, they can select files that reside in a folder, or even a whole directory structure, and place them in a self extracting package ready for distribution.
Extractor is the resultant distributed package. With its simple user interface, its mainly purpose is to extract the packaged files/directories in a selected path on the target computer, reconstructing the original directory structure if any.

  • Requires an active NSIS installation on systems where building packages.
  • Partially based on RecFind.nsh by Afrow UK - thanks Stu!
  • In deep based on NSIS - thanks NSIS
  • Comments and suggestions are welcome.
  • Source code provided by request.


ScreenShots

NSIS Sfx Package Builder NSIS Sfx Package Extractor
Builder.png
Extractor.png


Versions History

1.05.02.2006

  • Added feature to set compression method.

Builder

  • Gui improvements.


1.04.09.2006

  • Added feature to select zip archive as source (zip2Exe capability).
  • Application's stability improved to the topmost desired level.
  • Code cleaning performed, therefore removed no needed anymore functions as RecFind.nsh.
  • To accomplish the new (Zip2Exe) feature, involves Nsisunz_plug-in from wiki.

Builder

  • GUI changes to suit the added feature Zip2Exe.

ToDo!

  • Alternative feature to select rar arhive beyond zip (hard working on this).
  • Code cleaning and transformation of all needed functions to system plugin.
  • More or less, the creation of a featured NSIS script creator.


1.04.02.2006

  • Changes in this release are focused mainly in application's stability and solid operation in user interaction mode.

To accomplish the features were added, involves the following plugins/functions from wiki:
GetDrives
Get_File_Size_using_the_system_plugin
CheckSpaceFree
DirState
GetSize
GetVersion_(Windows)_plug-in

Builder

  • Calculates package's uncompressed size and pass it to extractor.
  • Does not accept invalid source path entry.
  • Does not accept empty directories and/or subdirectories.
  • Does not accept a whole HDD as source.
  • Warn users if source is removable CDROM, Memory Card etc.
  • Warn users if source is zero data size.
  • Does not accept invalid output path entry.
  • Calculates target's free space whether is sufficient to store the package.
  • Some minor additions.

Extractor

  • Does not accept invalid output path entry.
  • Calculates target's free space whether is sufficient for decompressed package.
  • Some minor additions.

1.03.27.2006

  • 1st release is stable enough to go out. Please test it and report bugs.

License

This application is provided 'as-is', without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this header file.

Permission is granted to anyone to use this application for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

  1. The origin of this application must not be misrepresented; you must not claim that you wrote the original application. If you use this application in a product, an acknowledgment in the product documentation would be appreciated but is not required.
  2. Altered versions must be plainly marked as such, and must not be misrepresented as being the original application.
  3. This notice may not be removed or altered from any distribution.