Страница: 1 |
Вопрос: Архивация вложенных каталогов через API, VS2008 | Добавлено: 02.04.09 23:47 |
Автор вопроса: ![]() |
Доброй ночи!
Есть необходимость архивировать дерево каталогов без привлечения сторонних библиотек и компиляции чего-то готового на си шарп, например, во вложенном проекте. Что не работает: Dim App As New Object
App = CreateObject("Shell.Application") App.NameSpace("c:\b.zip").CopyHere((App.NameSpace("C:\Folder").items)) отрабатывает, но ничего не делает; если убрать вторые скобки после CopyHere, то Член группы не найден. (Исключение из HRESULT: 0x80020003 (DISP_E_MEMBERNOTFOUND)). |
Ответы | Всего ответов: 2 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ICQ: Вопросов: 5 Ответов: 9 |
Web-сайт: Профиль | Цитата | #1 | Добавлено: 02.04.09 23:50 |
Далее, пытаюсь создать в архиве папочку:
получаю Попытка чтения или записи в защищенную память. Это часто свидетельствует о том, что другая память повреждена. Единичный файл добавляется нормально, все пути существуют. Что делать? ЗЫ В 3,5 есть инструменты, я знаю, просто предел для проекта - 2.0. ))) |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ICQ: Вопросов: 5 Ответов: 9 |
Web-сайт: Профиль | Цитата | #2 | Добавлено: 05.04.09 19:09 |
Итак, отписываюсь о попытках подружить .net и COM:
Работает, но, к сожалению, 1 раз из 20 или 30 - в остальных случаях создается пустой архив и все. Пробовал ставить задержку в 3 секунды и просто прогонять на уже созданном руками архиве - картина одна и та же. Да, не забывайте про двойные скобки вокруг некоторых аргументов (указание компилятору, что значение передается ByVal). Коллеги, если я где-то явно лоханулся, не сочтите за труд отписаться здесь! |
Страница: 1 |
|