Why I developed it
Sometimes, those off the shell installation tools might require you to write some script in order to properly copy those distributed file into the defined folder. Yet, it may not best fit your requirement as in our real software development community, there are always some demanding boss keep on asking more but paying less for the development tools. That the reason why I have start design & develop my first self-extract executable file to support my new LiveUpdate module in my application.
After I developed it, and I found I can make it even better by reuse the same code (EXE) more efficiently in the future. So, finally I have come-out my own Self-Extract EXE builder. Which will scan the specified folder and accumulate each files (binary data) into a single binary file, follow by compressed it using the Zlib* algorithm and subsequently inject it into the embedded self-extract executable file by the UpdateResource API.
This API only support on Windows 2000/XP/NT but not Windows95/98/ME
Methodology behind the scene
The methodology applied in this project is simple and straight forward. As the entire project was split into 3 separate module and each module it take place at different stages in order to archieve the final goal! (distribute any files via a self-extract executable file)
I also included the sample source code, which will offer you a better understanding on the process involve on the above first 2 module (SelfExtract.exe and SetupEx.exe).