Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python 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. use chilkat; $zip = new chilkat::CkZip(); # Any string unlocks the component for the 1st 30-days. $success = $zip->UnlockComponent("Anything for 30-day trial"); if ($success != 1) { print $zip->lastErrorText() . "\n"; exit; } # 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 != 1) { print $zip->lastErrorText() . "\n"; exit; } # 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 = 1; $zip->AppendFiles("c:/temp/a/*",$recurse); # Indicate that when the EXE is run, it should automatically # extract to a temp directory. $zip->put_AutoTemp(1); # If you want the EXE to self-extract with no user-interface, # add this: $zip->put_ExeNoInterface(1); $zip->put_ExeSilentProgress(1); $zip->put_ExeWaitForSetup(0); # 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 != 1) { print $zip->lastErrorText() . "\n"; exit; } print "EXE Created!" . "\n"; |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2008 Chilkat Software, Inc. All Rights Reserved.