27.11.2003, 10:02 | #1 |
Участник
|
WinApi. Удаление файлов глючит.
есть метод, который должен проверить каталог, на содержание txt файлов, и удалить их, в случае согласия пользователя.
В общем не пашет это дело - не хочет он удалять первый найденный файл, и зацикливается... Я так понимаю, из-за того что hanlom захватывает axapta этот файл и держит. WinApi::closeHandle(handle) и WinApi::findClose(handle); не помогают... Никто не подскажет, что я не так делаю? Спасибо. int deleteAllFiles() { int handle=0; str fn=''; DialogButton db; ; handle =conpeek(WinApi::findFirstFile(pathname+"\\*.txt"),1); if (handle != -1) { db = BOX::yesNo("В указанном каталоге уже есть TXT файлы!!! Удалить их?",DialogButton::Yes); if (db == DialogButton::Yes) { WinApi::closeHandle(handle); WinApi::findClose(handle); do { fn = conpeek(WinApi::findFirstFile(pathname+"\\*.txt"),2); handle =conpeek(WinApi::findFirstFile(pathname+"\\*.txt"),1); WinApi::deleteFile(pathname+'\\'+fn); } while (fn); } if (db == DialogButton::No) { return(0); } } return(1); } |
|