? Удалить папку

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
i_mark
Новичок
Новичок
 
Сообщения: 34
Зарегистрирован: 28.02.2003 (Пт) 14:08
Откуда: Russia

? Удалить папку

Сообщение i_mark » 27.03.2003 (Чт) 12:19

Без FSO.
Можно ли как-то по простому, типа Kill c какой-нибудь константой vbDirectory?

Tauron
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 187
Зарегистрирован: 14.07.2002 (Вс) 17:43
Откуда: Kazakhstan

Сообщение Tauron » 27.03.2003 (Чт) 13:01

Declare Function RemoveDirectory Lib "kernel32" Alias "RemoveDirectoryA" (ByVal lpPathName As String) As Long
Трезвая голова, холодный ум и ледяное сердце.

skiperski
Идеолог
Идеолог
Аватара пользователя
 
Сообщения: 1386
Зарегистрирован: 25.06.2002 (Вт) 15:52

Сообщение skiperski » 27.03.2003 (Чт) 13:54

Если по-простому, то:
RmDir <PathName>

i_mark
Новичок
Новичок
 
Сообщения: 34
Зарегистрирован: 28.02.2003 (Пт) 14:08
Откуда: Russia

Сообщение i_mark » 27.03.2003 (Чт) 14:07

Это именно то, что нужно. Ну люблю я вот так :)

Спасибо.

i_mark
Новичок
Новичок
 
Сообщения: 34
Зарегистрирован: 28.02.2003 (Пт) 14:08
Откуда: Russia

Сообщение i_mark » 27.03.2003 (Чт) 14:12

Э, нет. Память не подвела. Помнилось, что так, по-простому, можно удалить только пустую папку . Думал - ошибся, оказалось - нет.

Ну ладно, нет - так нет.

i_mark
Новичок
Новичок
 
Сообщения: 34
Зарегистрирован: 28.02.2003 (Пт) 14:08
Откуда: Russia

Сообщение i_mark » 27.03.2003 (Чт) 14:31

Короче, ну нафиг. Сделал через FSO, как и раньше, и все. А то сплошная долботня со всей этой простотой.

Firestorm
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 946
Зарегистрирован: 02.05.2002 (Чт) 14:36
Откуда: Russia

Сообщение Firestorm » 27.03.2003 (Чт) 17:38

удаление папки... :lol:
Код: Выделить всё
Function DelTree(ByVal strDir As String) As Long
Dim xxx As Long
Dim intAttr As Integer
Dim strAllDirs As String
Dim strFile As String
DelTree = -1
On Error Resume Next
strDir = Trim$(strDir)
If Len(strDir) = 0 Then Exit Function
If Right$(strDir, 1) = "\" Then strDir = Left$(strDir, Len(strDir) - 1)
If InStr(strDir, "\") = 0 Then Exit Function
intAttr = GetAttr(strDir)
If (intAttr And vbDirectory) = 0 Then Exit Function
strFile = Dir$(strDir & "\*.*", vbSystem Or vbDirectory Or vbHidden)
Do While Len(strFile)
If strFile <> "." And strFile <> ".." Then
intAttr = GetAttr(strDir & "\" & strFile)
If (intAttr And vbDirectory) Then
strAllDirs = strAllDirs & strFile & Chr$(0)
Else
If intAttr <> vbNormal Then
SetAttr strDir & "\" & strFile, vbNormal
If Err Then DelTree = Err: Exit Function
End If
Kill strDir & "\" & strFile
If Err Then DelTree = Err: Exit Function
End If
End If
strFile = Dir$
Loop
Do While Len(strAllDirs)
xxx = InStr(strAllDirs, Chr$(0))
strFile = Left$(strAllDirs, xxx - 1)
strAllDirs = Mid$(strAllDirs, xxx + 1)
xxx = DelTree(strDir & "\" & strFile)
If xxx Then DelTree = xxx: Exit Function
Loop
RmDir strDir
If Err Then
DelTree = Err
Else
DelTree = 0
End If
End Function
...просто гламурный падонак...
_________________
reborn! v.2 :twisted:
_________________

serix
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 177
Зарегистрирован: 09.11.2002 (Сб) 17:54
Откуда: Russia

Сообщение serix » 29.03.2003 (Сб) 20:39

Посмотрев на это (почему нет смайлика со стрелкой вверх) все будут пользоваться только FSO...
ZU

**Black-Van**
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 15
Зарегистрирован: 05.05.2004 (Ср) 12:32
Откуда: Эстония

Сообщение **Black-Van** » 06.05.2004 (Чт) 12:15

А на Print "что нибуть" у Firestorm небось тоже найдётся "правельный код" длинной в пол страници :?:
Не обращайте внимания на грамотность.(Каждому своё)


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot, The trick, Yandex-бот и гости: 13

    TopList