SQL Server Stored Procedure Examples

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

SQL Server
Stored Procedure Examples

Quick Start
Encryption
File Access
IMAP
POP3
SMTP
Email Object
DKIM / DomainKey
FTP
HTML Conversion
HTTP
MHT
MIME
NTLM
RSA
Diffie-Hellman
DSA
Socket
Spider
SSH Key
SSH
SSH Tunnel
SFTP
String
Tar
Upload
XML
XMP
Zip

Amazon S3
Bz2
CSV
FileAccess
Byte Array
RSS
Atom
Self-Extractor

Create Zip Excluding Files Matching Patterns

How to create a .zip archive excluding (skipping) files that match a set of wildcarded patterns.

Download Chilkat 32-bit Zip ActiveX (.msi) (includes objects for .zip, .gz, .bz2, and .Z)

Download All 32-bit Chilkat ActiveX Components (.zip)

Download All 64-bit Chilkat ActiveX Components (.zip)

CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @sTmp0 nvarchar(4000)
    DECLARE @zip int
    EXEC @hr = sp_OACreate 'Chilkat.Zip2', @zip OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    DECLARE @success int

    --  Any string unlocks the component for the 1st 30-days.
    EXEC sp_OAMethod @zip, 'UnlockComponent', @success OUT, 'Anything for 30-day trial'
    IF @success <> 1
      BEGIN
        EXEC sp_OAGetProperty @zip, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        RETURN
      END

    EXEC sp_OAMethod @zip, 'NewZip', @success OUT, 'test.zip'
    IF @success <> 1
      BEGIN
        EXEC sp_OAGetProperty @zip, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        RETURN
      END

    --  Create a string array object with our set of filename patterns
    --  to be excluded:
    DECLARE @sa int
    EXEC @hr = sp_OACreate 'Chilkat.CkStringArray', @sa OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    EXEC sp_OAMethod @sa, 'Append', NULL, '*.bak'
    EXEC sp_OAMethod @sa, 'Append', NULL, '*.tmp'

    --  Tell the zip object to use these exclusions:
    EXEC sp_OAMethod @zip, 'SetExclusions', NULL, @sa

    --  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 WriteZip (or WriteZipAndClose,
    --  or WriteExe, etc.) is called, the files are compressed
    --  and encrypted.
    DECLARE @recurse int

    SELECT @recurse = 1
    EXEC sp_OAMethod @zip, 'AppendFiles', NULL, 'c:/temp/a/*', @recurse

    EXEC sp_OAMethod @zip, 'WriteZipAndClose', @success OUT
    IF @success <> 1
      BEGIN
        EXEC sp_OAGetProperty @zip, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        RETURN
      END

    PRINT 'Zip Created!'
END
GO

 

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