2016-05-13 2 views
0

Я пытаюсь удалить файл на VB.net. Когда я запускаю программу, используя метод удаления, указанный ниже, файл удаляется, но также и содержимое соответствующего заархивированного файла. Однако, когда я отлаживаю шаг за шагом, содержимое заархивированного файла не удаляется? Это не имеет смысла, почему это происходит?Удаление файла в vb.net удаляет содержимое ZIP-папки

Shell("C:\Program Files\7-Zip\7z.exe a " + zippedLocation(1) + ".zip " + NewFileNames(1)) 
My.Computer.FileSystem.DeleteFile(NewFileNames(1)) 
Shell("C:\Program Files\7-Zip\7z.exe a " + zippedLocation(2) + ".zip " + NewFileNames(2)) 
My.Computer.FileSystem.DeleteFile(NewFileNames(2)) 

ответ

0

Попробуйте выполнить приведенный ниже код. Вероятно, вам нужно дать 7z некоторое время для завершения операции. Если фиксированный 5-секундный интервал является базовым, вам нужно создать функцию, которая проверяет, записывается ли файл.

Shell("C:\Program Files\7-Zip\7z.exe a " + zippedLocation(1) + ".zip " + NewFileNames(1)) 
system.threading.thread.sleep(5000) 'give 7z some time to finish the zipping (5 sec) 
My.Computer.FileSystem.DeleteFile(NewFileNames(1)) 
Shell("C:\Program Files\7-Zip\7z.exe a " + zippedLocation(2) + ".zip " + NewFileNames(2)) 
My.Computer.FileSystem.DeleteFile(NewFileNames(2)) 
system.threading.thread.sleep(5000) 
Смежные вопросы