Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
|
Modify Name of File Stored within Zip when Creating a .zipDemonstrates how to create a zip where the filename within the .zip is different than the filename that was added from the filesystem. 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 EXEC sp_OAMethod @zip, 'UnlockComponent', @success OUT, 'anything for 30-day trial' IF @success <> 1 BEGIN PRINT 'Failed to unlock zip component' RETURN END -- Intialize the zip object by calling NewZip. EXEC sp_OAMethod @zip, 'NewZip', NULL, 'myZip.zip' -- Add a reference to a file on disk to the zip object. -- (When appending files to a zip, the files are not actually -- read into memory. References to the file(s) are added. -- When WriteZip is called, the referenced files are streamed in -- and compressed to the .zip.) DECLARE @saveExtraPath int SELECT @saveExtraPath = 0 EXEC sp_OAMethod @zip, 'AppendOneFileOrDir', @success OUT, 'c:/temp/a/hamlet.xml', @saveExtraPath IF @success <> 1 BEGIN EXEC sp_OAGetProperty @zip, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 RETURN END -- The zip object references a single file. -- Retrieve the entry object... DECLARE @entry int EXEC sp_OAMethod @zip, 'GetEntryByIndex', @entry OUT, 0 -- Set the entry's filename to anything you want: EXEC sp_OASetProperty @entry, 'FileName', 'somethingElse.xml' -- Note: Internally, the zip component retains the name of -- the file referenced. The current setting of the zip entry's -- FileName property is stored in the .zip when writing. -- The zip written here will contain somethingElse.xml EXEC sp_OAMethod @zip, 'WriteZipAndClose', @success OUT IF @success <> 1 BEGIN EXEC sp_OAGetProperty @zip, 'LastErrorText', @sTmp0 OUT PRINT @sTmp0 END ELSE BEGIN PRINT 'Zip created!' END END GO |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.