Не удалить каталог после подключения к .dbf, счит. и откл.

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

waaad
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 29.11.2005 (Вт) 9:04
Откуда: Санкт-Петербург

Не удалить каталог после подключения к .dbf, счит. и откл.

Сообщение waaad » 29.11.2005 (Вт) 9:28

Доброго времени суток.
Помогите, застрял. Может кто сталкивался.
Подключаюсь к dbf-нику (dBASE), считываю значение из поля, закрываю Recordset, закрываю Connection. После этого мне нужно удалить этот dbf-ник с содержащим его каталогом. Файл удаляется, а каталог не хочет, выскакивает исключение, что каталог занят каким-то процессом. Может можно его как-то освободить.

Код: Выделить всё
Private m_cnADOConnection As New ADODB.Connection
    Private m_rstContact As New ADODB.Recordset
        m_cnADOConnection.Open("Driver=Microsoft dBASE Driver (*.dbf); DBQ=C:\1\2\4")
        m_rstContact.Open("BASE", m_cnADOConnection, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic)
        m_rstContact.Close()
        m_cnADOConnection.Close()


            Directory.Delete("C:\1\2\4", True)


Может кто чего подскажет? А то даже из под Винды этот каталог не удалить, так его кто-то держит.[/code]

waaad
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 29.11.2005 (Вт) 9:04
Откуда: Санкт-Петербург

Сообщение waaad » 02.12.2005 (Пт) 16:22

Ну чего, ребят, никто не подскажет?
Работа стоит :(

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 02.12.2005 (Пт) 16:24

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

waaad
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 29.11.2005 (Вт) 9:04
Откуда: Санкт-Петербург

Сообщение waaad » 02.12.2005 (Пт) 16:26

Вот это подключение и держит, которое я в первом посте описал.

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 02.12.2005 (Пт) 16:33

waaad писал(а):Вот это подключение и держит, которое я в первом посте описал.


а если его в нафин сбросить?
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

waaad
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 29.11.2005 (Вт) 9:04
Откуда: Санкт-Петербург

Сообщение waaad » 02.12.2005 (Пт) 16:36

Так оно и так закрыто:
m_cnADOConnection.Close()
Как его еще можно сбросить?
Главное, что оно файл, к которому подключаюсь не держит, его можно удалить, а каталог, в котором этот файл лежит - не дает.

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 02.12.2005 (Пт) 16:40

waaad писал(а):Так оно и так закрыто:
m_cnADOConnection.Close()
Как его еще можно сбросить?
Главное, что оно файл, к которому подключаюсь не держит, его можно удалить, а каталог, в котором этот файл лежит - не дает.


а если перед удалением сменить каталог?
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 02.12.2005 (Пт) 16:41

waaad писал(а):Как его еще можно сбросить?


DB = Nothing
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

waaad
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 29.11.2005 (Вт) 9:04
Откуда: Санкт-Петербург

Сообщение waaad » 02.12.2005 (Пт) 16:49

DB = Nothing

Это что такое - DB?

а если перед удалением сменить каталог?

Не помогает. Я в программе считываю из пяти dbf-ников по очереди, которые лежат в разных пяти каталогах, и он эти пять каталогов и не может удалить. Это я для примера один написал.

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 02.12.2005 (Пт) 17:10

waaad писал(а):
DB = Nothing

Это что такое - DB?


для твоего примера это m_cnADOConnection
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

waaad
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 29.11.2005 (Вт) 9:04
Откуда: Санкт-Петербург

Сообщение waaad » 02.12.2005 (Пт) 17:22

Не, не помогает.

Loiste
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 136
Зарегистрирован: 28.09.2005 (Ср) 11:59

Сообщение Loiste » 05.12.2005 (Пн) 8:43

У меня та же фигня...только с файлом базы..

lord0n
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 845
Зарегистрирован: 30.06.2005 (Чт) 9:55
Откуда: Moskow

Сообщение lord0n » 05.12.2005 (Пн) 8:53

а если прогу остановить, то мона удалить диру?
Теория - это когда что-то не работает и известно почему.
Практика - это когда что-то работает, но неизвестно почему.
Нам удалось совместить теорию с практикой, теперь ничего не работает и неизвестно почему.

Loiste
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 136
Зарегистрирован: 28.09.2005 (Ср) 11:59

Сообщение Loiste » 05.12.2005 (Пн) 9:13

можно..только не диру, а файл...*.mdb ..это естественно, ведь тогда его 100% уже никакой процесс не держит :) но мне нужно во время работы..но тут больше писать не буду...не хочу флудить..я для этого тему создала :)

waaad
Начинающий
Начинающий
 
Сообщения: 12
Зарегистрирован: 29.11.2005 (Вт) 9:04
Откуда: Санкт-Петербург

Сообщение waaad » 05.12.2005 (Пн) 12:01

а если прогу остановить, то мона удалить диру?

Да, если прогу прикрыть, можно удалить.
Держит именно эта часть, которую я в первом посте описал.
И еще что интересно - просто мистика - домой прогу принес - а дома все работает, и каталоги удаляются, просто чудеса. :shock:


Вернуться в Visual Basic .NET

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12

    TopList  
cron