Как исправить ошибку доступа .

Здравствуйте ! Помогите начинающему  :  у меня возникла  такая проблема : есть dll-ka , которая считывает данные всех  файлов каталога ( подразумевается  что все файлы одинаковой структуры – типизированные  ) , я её подрубаю к своей проге  в Дельфях. Иногда в эти файлы пролезает косячный файл  ( с другой структурой данных )  и возникает исключительная ситуация  которая в dll  не предусмотрена  и обработка зависает . Так вот надо чтобы этот файл косячный переименовывался  , а я не могу отключить доступ этой dll-ки к этому файлу ( при попытке переименовании  косячного файла выводится ошибка «I/O error 32») . Как это можно сделать ? P.S. Дельфовский текст dll утерян :-(   -    можно было там прописать через  try ... except  .
4 ответа

Перед вызовом функции DLL прошерстите каталог, да удалите косячные файлы.


В том-то и дело что "шерстение"  происходит внутри dll-ки ( и в ней не было предусмотрено обработка исключений  ) . А файлы не текстовые и в каком месте файла происходит исключение непонятно.


в каком месте файла происходит исключение непонятно
Тогда непонятно, как же вы собрались отличать одни файлы от других. Сейчас вы сформулировали задачу примерно так: "сделай мне то, я сам не знаю что". Удачи с такой постановкой.


В общем мне нужно при наличии в каталоге косячного файла ( т.е. возникает исключ. ситуация при работе dll )  ИЗ ПРОГРАММЫ аварийно завершить работу dll-ки . Как это сделать ?  А как ЗАТЕМ отличать одни файлы от других -  этот алгоритм у меня есть.