Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как удалить папку напрочь? Возникает 75 ошибка при удалении папки 
:(
    Опции темы
alt5000
  Дата 16.1.2007, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 40
Регистрация: 9.4.2006
Где: г. Выборг

Репутация: нет
Всего: нет



При попытке создать папку с тем же именем возникает ошибкаю Перед этим я пытаюсь удалить папку с помощью RmDir(), но она почему - то не удаляется. Помогите пожалуйста мне удалит напрочь эту папку (пустую или с файлами внутри).

И еще один вопрос. Можно ли в VB с помощью конструкции if Dir("имя папки") <>"" then проверить наличие папки (а не файла!). Если можно, то подскажите пожалуйста, как, а то совсем не получается ничего.  smile 

Заранее благодарен...
PM MAIL WWW   Вверх
alt5000
Дата 16.1.2007, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 40
Регистрация: 9.4.2006
Где: г. Выборг

Репутация: нет
Всего: нет



ДОПОЛНЕНИЕ : Я понял так, что вначале нужно удалить содержимое папки с помощью \*.*, а потом саму папку, но для программы мне нужно, чтобы он совершал эти опреации только когда папка существует, так как в противном случае, мы нарываемся на ошибку. А вот как проверить есть ли эта папка (пустая или нет)? if dir ()<>"" почему-то проезжает эту проверку...

Добавлено @ 13:28 
ДОПОЛНЕНИЕ: На всякий случай даю код (правда сомневаюсь, что это как-то поможет):

If Dir(path_gen) <> "" Then
Kill (path_gen + "\*.*")
RmDir (path_gen)
End If
PM MAIL WWW   Вверх
Akina
Дата 16.1.2007, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Пытаешься сделать эту папку текущей. 
Если получилось - удаляешь из нее все файлы. Задача решена.
Иначе пытаешься ее создать.
Если получилось - задача решена.

Иначе выводишь сообщение о невозможности выполнить операцию. То, где и какая ошибка возникнет, укажет на причину (права, совместный доступ, атрибуты и пр.)

С помощью Dir() проверить существование папки нельзя.



--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
bom
Дата 17.1.2007, 00:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 329
Регистрация: 22.2.2004
Где: Казахстан, Алматы

Репутация: 4
Всего: 6



Резюмируя алгоритм Akina, в коде это будет выглядеть примерно так:
Код

Dim FoldPath As String
FoldPath = "C:\Documents and Settings\User\Рабочий стол\TestFold"
On Error GoTo errproc
If GetAttr(FoldPath) And vbDirectory Then 'Если папка существует - удаляем:
    Dim delFSO As Object
    Set delFSO = CreateObject("Scripting.FileSystemObject")
    delFSO.DeleteFolder FoldPath, True
    Set delFSO = Nothing
    Else
    'Если существует, но не является папкой:
    MsgBox FoldPath & " не является директорией!", vbCritical
End If
Exit Sub
errproc:
'Если папка не существует - создадим:
If Err.Number = 53 Then MkDir (FoldPath) Else MsgBox Err.Description, vbCritical

PM MAIL   Вверх
alt5000
Дата 17.1.2007, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 40
Регистрация: 9.4.2006
Где: г. Выборг

Репутация: нет
Всего: нет



Всем спасибо за ответы. Попробую сделать...
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0447 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.