Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Как быстро удалить директорию... Добавлено: 19.10.04 00:43  

Автор вопроса:  Apache2 | ICQ: 162823477 
Подскажите, как можно быстро и без лишнего программного кода удалить целую директорию, с её поддиректориями и всеми файлами...
например: удалить папку C:\Windows\

Ответить

  Ответы Всего ответов: 12  

Номер ответа: 1
Автор ответа:
 freeloader



ICQ: 50804884 

Вопросов: 72
Ответов: 642
 Web-сайт: freeloader.folder-pro.net
 Профиль | | #1
Добавлено: 19.10.04 07:37
Например такую папку не удалить :)
а вообще есть такая функция: RemoveDirectory

Ответить

Номер ответа: 2
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #2 Добавлено: 19.10.04 08:27
Ни фига! Эта функция убивает пустую папку!

Ответить

Номер ответа: 3
Автор ответа:
 freeloader



ICQ: 50804884 

Вопросов: 72
Ответов: 642
 Web-сайт: freeloader.folder-pro.net
 Профиль | | #3
Добавлено: 19.10.04 08:47
ну коль такое не катит, значить такое должно покатить... : http://vbnet.ru/faq/showtopic.asp?id=12

Ответить

Номер ответа: 4
Автор ответа:
 Mihalыch



ICQ: 373-509-101 

Вопросов: 56
Ответов: 330
 Профиль | | #4 Добавлено: 19.10.04 11:21
Если установлен Microsoft Office - запускаешь проект, меню Project > References, ставишь птицу напротив Microsoft Scripting Runtime…

Option Explicit
    ;Dim FSO As FileSystemObject
Private Sub Command1_Click()
    Set FSO = New FileSystemObject
    FSO.DeleteFolder "C:\Новая папка", True
End Sub

Ответить

Номер ответа: 5
Автор ответа:
 ANDREY Z5Z



Вопросов: 38
Ответов: 125
 Web-сайт: save-games.info
 Профиль | | #5
Добавлено: 19.10.04 16:19
Я написал для себя так (кусочек кода):
Option Explicit
Public fs As Object
Public hj As Object
Public fk As Object
Public NameVal As String
Public Drv As String

Sub Tmp()
On Error Resume Next
Dim Xcat As String
NameVal = CStr(T1.Text & "\";)
Drv = CStr(D1.Drive & "\";)
Drv = CStr(Left(Drv, 2) & "\";)
If T1.Text = "" Then NameVal = "user\"
Xcat = LoadResString(106)
Dim i As Integer
Set fs = CreateObject("Scripting.FileSystemObject";)
Dim FL(1 To 12) As String
FL(1) = Drv & LoadResString(101)
FL(2) = Drv & Xcat & NameVal & LoadResString(102)
FL(3) = Drv & Xcat & NameVal & LoadResString(103)
FL(4) = Drv & LoadResString(104) + LoadResString(107)
FL(5) = Drv & LoadResString(104) + LoadResString(108)
FL(6) = Drv & LoadResString(104) + LoadResString(109)
FL(7) = Drv & LoadResString(105) + LoadResString(107)
FL(8) = Drv & LoadResString(105) + LoadResString(108)
FL(9) = Drv & LoadResString(105) + LoadResString(109)
FL(10) = Drv & Xcat & NameVal & LoadResString(107)
FL(11) = Drv & Xcat & NameVal & LoadResString(108)
FL(12) = Drv & Xcat & NameVal & LoadResString(109)
For i = 1 To 12
If fs.folderexists(FL(i)) Then
Set hj = fs.GetFolder(FL(i))
DelFileInFolder
DelSubFolder
End If
Next i
If Err.Number = 0 Then
MainForm.StB.SimpleText = "Удаление завершено."
Else: MainForm.StB.SimpleText = "Удаление завершено.(некоторые файлы могли быть недоступны)"
End If
End Sub

Sub DelSubFolder()
On Error Resume Next
Dim uu
Set fk = hj.subfolders
For Each uu In fk
SetAttr uu, vbNormal
fs.deletefolder uu, 1
Next
End Sub

Sub DelFileInFolder()
On Error Resume Next
Dim fd As Object
Dim uu
Set fd = hj.Files
For Each uu In fd
SetAttr uu, vbNormal
Kill uu
Next
End Sub

Ответить

Номер ответа: 6
Автор ответа:
 ANDREY Z5Z



Вопросов: 38
Ответов: 125
 Web-сайт: save-games.info
 Профиль | | #6
Добавлено: 19.10.04 16:22
Да забыл, ;) T1 - это тестовое поле. И вообще половина кода предусматривает нечто другое. Просто смотрите нужные операции удаления. Если файл занят, то он пропускается.

Ответить

Номер ответа: 7
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #7 Добавлено: 19.10.04 20:23
Вот ещё моё предложение... просили всётаки без лишнего кода :) тогда можно батик на ходу сделать, это и очень просто, и прогу не тормозит, вообщем del C:\Windows\*.* /q ну или что-то в єтом роде

Ответить

Номер ответа: 8
Автор ответа:
 ASiD



ICQ: 259132473 

Вопросов: 19
Ответов: 23
 Профиль | | #8 Добавлено: 19.10.04 22:15
У меня на сайте есть исходник!

Ответить

Номер ответа: 9
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #9 Добавлено: 20.10.04 14:23
Скинь, пожалуйста. Буду рад :))

Ответить

Номер ответа: 10
Автор ответа:
 Alexey333



ICQ: 127708322 

Вопросов: 4
Ответов: 29
 Профиль | | #10 Добавлено: 20.10.04 16:06
А можно как-нибудь удалить прогу (или папку с этой пргой), которая уже запущена в данный момент?
Я вот пробовал, так запщенную прогу не хочет удалять, а незапущенную удаляет спокойно.

Ответить

Номер ответа: 11
Автор ответа:
 freeloader



ICQ: 50804884 

Вопросов: 72
Ответов: 642
 Web-сайт: freeloader.folder-pro.net
 Профиль | | #11
Добавлено: 20.10.04 16:39
нет нельзя, надо писать батник, и то только после перезагрузки можно будет удалить, ..., это если надо удалить свою прогу, а чужую, можно попытаться остановить выполнение, а потом уже удалить

Ответить

Номер ответа: 12
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #12
Добавлено: 20.10.04 16:46
>У меня на сайте есть исходник!
А у меня есть бинарник - кто рискнет? :)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам