Sample code for 30+ languages & platforms
VB.NET

Create Self-Extracting Executable (Windows-only)

Demonstrates how to create a Windows self-extracting EXE.

Chilkat VB.NET Downloads

VB.NET
' AbortCheck callback method.
Private Sub zip_OnAbortCheck(sender As Object, args As Chilkat.AbortCheckEventArgs) Handles zip.OnAbortCheck

        
End Sub

' PercentDone callback method.
Private Sub zip_OnPercentDone(sender As Object, args As Chilkat.PercentDoneEventArgs) Handles zip.OnPercentDone

    Dim percentDone As Integer = args.PercentDone
        Debug.WriteLine("Percent Done: " & percentDone)
    ' Explicitly abort at 25% or greater.
    ' Remove this to allow for the HTTP download to run to completion.
    If (percentDone > 25) Then
        args.Abort = True
    End If
End Sub

' ProgressInfo callback method.
Private Sub zip_OnProgressInfo(sender As Object, args As Chilkat.ProgressInfoEventArgs) Handles zip.OnProgressInfo

    Dim name As String = args.Name
    Dim value As String = args.Value
        Debug.WriteLine(name & ": " & value)
End Sub

private Sub ChilkatExample()

    Dim success As Boolean = False

    ' This example requires the Chilkat API to have been previously unlocked.
    ' See Global Unlock Sample for sample code.







    Dim WithEvents zip As New Chilkat.Zip

    ' 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) Then
        Debug.WriteLine(zip.LastErrorText)
        Exit Sub
    End If


    ' 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.
    Dim recurse As Boolean = True
    zip.AppendFiles("c:/temp/a/*",recurse)

    ' Write "sfx.exe"
    success = zip.WriteExe("c:/temp/sfx.exe")
    If (success <> True) Then
        Debug.WriteLine(zip.LastErrorText)
        Exit Sub
    End If

End Sub