![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| shuttle |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 9.4.2008 Репутация: нет Всего: нет |
Использую SHFileOperation для удаления каталога.
В итоге каталог остается на месте. GetLastError - выводит 6 - ERROR_INVALID_HANDLE(The handle is invalid). В структуре SHFILEOPSTRUCT есть параметр hwnd. В MSDN написано hwnd - Window handle to the dialog box to display information about the status of the file operation. Я так понимаю для диалогового окна. А какое значение hvnd должно быть в консольном приложении. Или причина не в нем. --------------------
|
|||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 2 Всего: 26 |
читай описание функции, там все написано
|
|||
|
||||
| shuttle |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 9.4.2008 Репутация: нет Всего: нет |
что-то странное пошло.
если пишу так
то SHFileOperation позвращает 1026. - неудачное выполнение (причем не могу найти описание этой ошибки). если
то все нормально. В чем может быть причина? --------------------
|
||||
|
|||||
| shuttle |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 9.4.2008 Репутация: нет Всего: нет |
вроде кое-что прояснилось.
у sh.pFrom тип LPCTSTR, у меня переменная dir_temp типа wchar_t, оба Unicod-ские при копировании
компилятор не ругается, но видимо преобразование выполняется неправильно. И соответственно SHFileOperation (&sh); выполняется с ошибкой. Явное преобразование тоже не помогает
объявлять dir_temp типа LPCTSTR накладно, надо будет другую часть программы менять. Как правильно преобразовать из wchar_t к типу LPCTSTR? --------------------
|
||||
|
|||||
| Rififi |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: 2 Всего: 36 |
shuttle,
sh.pFrom=(LPCTSTR)dir_temp эту жуть убери, пока тебе руки не оторвали (: пути в функции должны завершаться двойным нулём _T('\0') |
|||
|
||||
| shuttle |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 9.4.2008 Репутация: нет Всего: нет |
так тоже пробовал не прокатывает. --------------------
|
|||
|
||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 2 Всего: 26 |
посмотри под отладчиком что там реально передается
|
|||
|
||||
| shuttle |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 9.4.2008 Репутация: нет Всего: нет |
Смотрел, строки полностью совпадают. Тут вот еще с переменными типа wchar_t покопался.
так не срабатывает а если инициализировать при объявлении(причем неважно какими данными), то нормально
так срабатывает В чем проблема????? Чудес же не бывает. --------------------
|
||||||
|
|||||||
| GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 2 Всего: 26 |
значит не совпадают.
и выложи код, вместо "// сдесь что происходит" Добавлено через 4 минуты и 26 секунд попробуй заодно обнулить SHFILEOPSTRUCT |
|||
|
||||
| Rififi |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: 2 Всего: 36 |
shuttle,
кусок из рабочего кода
|
|||
|
||||
| shuttle |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 9.4.2008 Репутация: нет Всего: нет |
фрагмент текста
--------------------
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |