Java Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Java Examples

Quick Start
Unicode
Bz2
Certificates
CSV
Email
Encryption
FTP
HTML Conversion
HTTP
IMAP
MHT
MIME
POP3
RSA
S/MIME
SFTP
Signatures
SMTP
Socket / SSL
Spider
SSH
SSH Key
SSH Tunnel
Tar
Upload
XML
XMP
Zip

More Examples...
Amazon S3
Email Object
DKIM / DomainKey
NTLM
FileAccess
RSS
Atom
String
Byte Array
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA
Bzip2
LZW

 

 

 

 

 

 

 

Self-Extract EXE to Temp and Auto-Run Setup Program

How to create a self-extracting EXE that extracts to a temp directory and auto-runs a setup program after extracting.

 Chilkat Java Library Downloads for Windows, Linux, and MAC OS X

import com.chilkatsoft.*;

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[])
  {
    CkZip zip = new CkZip();

    bool success;

    //  Any string unlocks the component for the 1st 30-days.
    success = zip.UnlockComponent("Anything for 30-day trial");
    if (success != true) {
        System.out.println(zip.lastErrorText());
        return;
    }

    //  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.
    bool recurse;
    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) {
        System.out.println(zip.lastErrorText());
        return;
    }

    System.out.println("EXE Created!");
  }
}

 

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.