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
(Unicode C) Encrypt Already Existing ZipTo encrypt an already existing non-encrypted .zip, the application must open the .zip, set the encryption related properties, and then re-write.
#include <C_CkZipW.h> void ChilkatSample(void) { HCkZipW zip; BOOL success; int numFilesUnzipped; // This requires the Chilkat Zip API to have been previously unlocked. // See Unlock Chilkat Zip for sample code. zip = CkZipW_Create(); // Open an unencrypted .zip success = CkZipW_OpenZip(zip,L"qa_data/zips/test.zip"); if (success != TRUE) { wprintf(L"%s\n",CkZipW_lastErrorText(zip)); CkZipW_Dispose(zip); return; } // Unzip to a temp directory. numFilesUnzipped = CkZipW_Unzip(zip,L"qa_output/tmp"); if (numFilesUnzipped < 0) { wprintf(L"%s\n",CkZipW_lastErrorText(zip)); CkZipW_Dispose(zip); return; } // Clear the zip object. CkZipW_NewZip(zip,L"qa_output/aesTest.zip"); // Indicate that 128-bit AES encryption is to be used when writing the .zip CkZipW_putEncryption(zip,4); CkZipW_putEncryptKeyLength(zip,128); // Set the password. CkZipW_putEncryptPassword(zip,L"secret"); // Append the files. CkZipW_putAppendFromDir(zip,L"qa_output/tmp"); success = CkZipW_AppendFiles(zip,L"*.*",TRUE); if (success != TRUE) { wprintf(L"%s\n",CkZipW_lastErrorText(zip)); CkZipW_Dispose(zip); return; } // Write the .zip and close it. success = CkZipW_WriteZipAndClose(zip); if (success != TRUE) { wprintf(L"%s\n",CkZipW_lastErrorText(zip)); CkZipW_Dispose(zip); return; } wprintf(L"Success.\n"); CkZipW_Dispose(zip); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.