#winapi #visual-c #directory #zip
#winapi #visual-c #каталог #zip
Вопрос:
Я использую утилиты Zip и создаю zip-файл. Я пытаюсь добавить папку и ее содержимое с учетом ее каталога в zip-файл, но ни функции ZipAddFolder(), ни функции ZipAdd() ничего не добавляют в zip-файл. Я могу создать новую папку в zip-файле с помощью ZipAddFolder(), но это не позволяет мне добавить нужную папку с ее содержимым. Он даже не добавляет какие-либо существующие файлы для меня. Мой код показан ниже:
#include <windows.h>
#include <stdlib.h>
#include <string.h>
#include <tchar.h>
#include <stdio.h>
#include "zip.h"
TCHAR zipFilename[] = TEXT("C:\Users\ttyler\Desktop\Software\Folder2\test3.zip");
TCHAR directoryPath[] = TEXT("C:\Users\ttyler\Desktop\Software\Folder2\");
TCHAR entryName[] = TEXT("NewFolder");
HZIP hz = CreateZip(zipFilename, 0);
if (hz == 0) {
// error...
}
//BOOL c = CopyFile(TEXT("C:\Users\ttyler\Desktop\Software\Folder2\test3.zip"), TEXT("C:\Users\ttyler\Desktop\Software\Folder2\test.zip\"), 0); // I even tried copying a file in using CopyFile but this didn't work either
//ZRESULT res = ZipAddFolder(hz, TEXT("C:\Users\ttyler\Desktop\Software\Folder2\")); // This does not add anything to the zip file
ZRESULT res = ZipAddFolder(hz, entryName); // This creates a new folder in the zip file named "NewFolder"
//ZRESULT res = ZipAdd(hz, entryName, TEXT("C:\Users\ttyler\Desktop\Software\Folder2\test1.zip")); //This does not add anything to the folder
if (res != ZR_OK) {
// error...
}
CloseZip(hz);
Кто-нибудь смог успешно добавить папку и ее содержимое в zip-файл с помощью утилит Zip или любого файла из другого места в zip-файл, если на то пошло? Есть ли другие лучшие способы сделать это — создать zip-файл и добавить в него папку и ее содержимое или просто заархивировать папку? Я уже пробовал XZip и libzip — XZip не работал для меня и для libzip, я не мог заставить все установки работать должным образом. Есть ли какие-либо другие простые библиотеки заголовков, которые я могу просто добавить для этого?
Комментарии:
1. Что такое утилиты Zip?
2. @RetiredNinja codeproject.com/Articles/7530 /…
3. Ах, не собираюсь регистрироваться, чтобы загрузить его. Удачи!
4. @RetiredNinja Вам не нужно регистрироваться, чтобы загрузить его, это бесплатно. Просто нажмите «Загрузить исходные файлы».
5. Который перенаправляет вас на страницу, требующую входа в систему. пожатие плечами