Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Java) Create Self-Extracting Executable (Windows-only)Demonstrates how to create a Windows self-extracting EXE.
import com.chilkatsoft.*; public class zipProgress extends CkZipProgress { public boolean AbortCheck() { boolean abort = false; // Application code goes here. // Return true to abort, false to continue. return abort; } public boolean PercentDone(int percentDone) { boolean abort = false; System.out.println("Percent Done: " + percentDone); // Explicitly abort at 25% or greater. // Remove this to allow for the HTTP download to run to completion. if (percentDone > 25) { abort = true; } // Return true to abort, false to continue. return abort; } public void ProgressInfo(String name, String value) { System.out.println(name + ": " + value); return; } }; public class ChilkatExample { static { try { System.loadLibrary("chilkat"); } catch (UnsatisfiedLinkError e) { System.err.println("Native code library failed to load.\n" + e); System.exit(1); } } public static void main(String argv[]) { // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. boolean success; CkZip zip = new CkZip(); zipProgress zip_progress = new zipProgress(); zip.put_EventCallbackObject(zip_progress); // 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) { System.out.println(zip.lastErrorText()); return; } // 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. boolean recurse = true; zip.AppendFiles("c:/temp/a/*",recurse); // Write "sfx.exe" boolean success = zip.WriteExe("c:/temp/sfx.exe"); if (success != true) { System.out.println(zip.lastErrorText()); return; } } } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.