Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
Self-Extract EXE to Temp and Auto-Run Setup ProgramHow to create a self-extracting EXE that extracts to a temp directory and auto-runs a setup program after extracting. Downloads for Windows/Linux and Install Instructions require 'rubygems' require 'chilkat' zip = Chilkat::CkZip.new() # Any string unlocks the component for the 1st 30-days. success = zip.UnlockComponent("Anything for 30-day trial") if (success != true) print zip.lastErrorText() + "\n" exit end # Initialize the zip object. Because we're creating # a self-extracting EXE in this example, the filename # passed to NewZip will never actually be created. success = zip.NewZip("notUsed.zip") if (success != true) print zip.lastErrorText() + "\n" exit end # Append a directory tree. The AppendFiles does # not read the file contents or append them to the zip # object in memory. It simply appends references # to the files so that when WriteExe (or WriteZipAndClose, # or WriteZip, etc.) is called, the files are compressed # and added to the archive. recurse = true zip.AppendFiles("c:/temp/a/*",recurse) # Indicate that when the EXE is run, it should automatically # extract to a temp directory. zip.put_AutoTemp(true) # If you want the EXE to self-extract with no user-interface, # add this: zip.put_ExeNoInterface(true) zip.put_ExeSilentProgress(true) zip.put_ExeWaitForSetup(false) # Indicate that after extracting, a setup program should be run: zip.put_AutoRun("setup.exe") # Pass these command line params to the AutoRun program: zip.put_AutoRunParams("-a -b -c") # Write "mySfx.exe" success = zip.WriteExe("mySfx.exe") if (success != true) print zip.lastErrorText() + "\n" exit end print "EXE Created!" + "\n" |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.