Сохранить () никогда не заканчивается - PullRequest
2 голосов
/ 22 ноября 2011

Я пытаюсь создать архив с DotNetZip.Я могу использовать метод AddFile и могу сохранять и удалять zip-файл.

Но когда я пытаюсь только добавить папки с помощью AddDirectory, следующее сохранение не заканчивается.

* 1004Есть ли у кого-то идея, что может пойти не так?Я попытался добавить MaxOutPutSegmentSize и UseZip64WhenSaving, как показано в некоторых примерах, но это ничего не изменило.Я пытался вызвать Save с zip-файлом explizit или нет.
function ZipUp-Files ( $mychildren )
{
  foreach ($o in $mychildren) 
  {
        $e= $zipfile.AddDirectory($o.FullName,$o.fullname.substring($pwd.path.length));
  }
}

$children =get-childitem -recurse -force | where-object {$_.psiscontainer} | where {$_.name -match $teststring} 

[System.Reflection.Assembly]::LoadFrom("C:\dotNetZip\zip-v1.9\Release\Ionic.Zip.dll");
$zipfile =  new-object Ionic.Zip.ZipFile($ziptarget);
ZipUp-Files $children
$zipfile.Save()
$zipfile.Dispose()

Заранее спасибо

1 Ответ

3 голосов
/ 24 ноября 2011

Здесь я нашел решение, которое решает мою проблему:

http://dotnetzip.codeplex.com/discussions/276149

Но все же я не знаю, какой будет лучший и самый быстрый обходной путь.

...