Код функции main.
LPCWSTR path = (LPCWSTR)"F:\\Test\\";
HANDLE hDir;
hDir = FindFirstChangeNotification((LPCWSTR)"F:\\Test\\", FALSE, FILE_NOTIFY_CHANGE_FILE_NAME);
if (hDir == INVALID_HANDLE_VALUE)
{
//std::cout << "Handle: 0x" << hDir << " " << path;
ErrorExit(TEXT("Operation"));
}
ErrorExit(TEXT("Operation")) - обработчик функции GetLastError(), которая выдает ошибку с кодом 2. Хэндл при выводе равен 0xffffffff
Во всех примерах первый параметр функции FindFirstChangeNotification указан без приведения к LPCWSTR
Но у меня в VS2015 без приведения ругается именно на это место, говоря о том, что необходим лонг поинтер, который я собственно и ставлю.
Не понимаю, в чем проблема. Помогите разобраться.
Ответ
Правильно будет написать
LPCWSTR path = TEXT( "F:\\Test\\" );
тем более, что вы уже используете этот макрос в тексте программы.
Комментариев нет:
Отправить комментарий