Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема с SHFileOperation в отдельном потоке

27K
19 мая 2010 года
TDK
29 / / 30.09.2008
Вот решил удалять файлы в папке в отдельном потоке создал класс
Код:
class ThreadClass
{
public:
static void __cdecl thread_proc(void* pParam)
{
TCHAR cache[128];
char path[128] = "\\cache\\*.*\0\0";
SHGetFolderPath(NULL,CSIDL_PERSONAL,NULL,0,cache);
strcat (cache, path);

SHFILEOPSTRUCT fo;
ZeroMemory(&fo, sizeof(fo));

fo.wFunc = FO_DELETE;
fo.pFrom = cache;
//fo.fFlags = FOF_NOCONFIRMATION | FOF_SILENT;
//MessageBox(NULL,cache,"",MB_ICONQUESTION);
SHFileOperation(&fo);
}
};

вот так создаю поток
 
Код:
_beginthread(ThreadClass::thread_proc, 0, 0);

но файлы так и не удаляются если же попросту вставить этот код прямо в программу без потока и класс то он работает.
7
19 мая 2010 года
@pixo $oft
3.4K / / 20.09.2006
Каков результат операции?Что показывает отладка?
27K
19 мая 2010 года
TDK
29 / / 30.09.2008
разобрался нужно было обнулить массив cache :rolleyes:
вопрос только почему в самой программе это делать не нужно было
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог