AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.11.2003, 14:59   #3  
Ruff is offline
Ruff
Дмитрий Ерин
Аватар для Ruff
1C
 
475 / 396 (14) ++++++
Регистрация: 18.09.2003
Адрес: Тула
Вот рабочий код:

int deleteAllFiles()
{
int Handle=0;
str FileName;
str Path = 'D:\\Temp';
dialogButton Db;

[Handle, FileName] = WinApi::findFirstFile(Path + '\\*.txt');
if (Handle == -1) return -1; // not found

Db = BOX::yesNo("В указанном каталоге уже есть TXT файлы!!! Удалить их?", DialogButton::Yes);
if (Db == DialogButton::No) return 0;

while (FileName)
{
WinApi::deleteFile(Path + '\\' + FileName);
FileName = WinApi::findNextFile(Handle);
}
WinApi::findClose(handle);
return 1;
}

Ваши ошибки:
1. Как я и думал, нужно было использовать FindNextFile
2. Нельзя было выполнять WinApi::findClose(handle), не закончив операцию;
3. Использование не совсем традиционного способа вытаскивания значений из контейнера (conpeek) привело к повторному вызову функции FindFirstFile, что само по себе некорректно.

Желаю удачи в нелегком деле удаления AllFiles с AllDrives

PS: Ради интереса посмотрите реализацию класса CCCopyDirectory.
За это сообщение автора поблагодарили: Gustav (5), alex55 (1), Logger (3).
Теги
открытие файла, поиск файлов, удаление файла

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Печать самих файлов PDF Владимир Максимов DAX: База знаний и проекты 9 17.08.2017 10:34
Axapta WinAPI::SewWindow... кто знает как? UNRW DAX: Программирование 2 26.09.2008 15:28
Dynamics AX Geek: Finding files with WinAPI Blog bot DAX Blogs 0 28.10.2006 16:40
WinAPI. Ссылка (POINT) третьего уровня вложенности Владимир Максимов DAX: Программирование 2 06.02.2006 16:28
WinAPI::getLastError() DreamCreator DAX: Программирование 4 20.06.2005 10:03

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:06.