Здравствуйте, HeaveN, Вы писали:
HN>Здравствуйте, Svat_, Вы писали:
S_>>Проблема с CreateFile (не получается запись в файл) S_>>Вот строки из кода программы:
S_>>HANDLE hFile ; S_>>MYSTRUCT level; S_>>hFile = CreateFile("filename.ext", GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); S_>>WriteFile(hFile, (char*)&level, sizeof(level), 0, NULL); S_>>CloseHandle(hFile);
S_>>Компилятор ругается: S_>>error C2664: 'CreateFileW' : cannot convert parameter 1 from 'char [13]' to 'const unsigned short *'
S_>>Подскажите пожалуйсто в чем ошибка.
HN>У меня VS.NET 2003 такое глотает без проблем... Может сделать явное приведение типа? Например:
HN>
Здравствуйте, Svat_, Вы писали:
S_>Проблема с CreateFile (не получается запись в файл) S_>Вот строки из кода программы:
S_>HANDLE hFile ; S_>MYSTRUCT level; S_>hFile = CreateFile("filename.ext", GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); S_>WriteFile(hFile, (char*)&level, sizeof(level), 0, NULL); S_>CloseHandle(hFile);
S_>Компилятор ругается: S_>error C2664: 'CreateFileW' : cannot convert parameter 1 from 'char [13]' to 'const unsigned short *'
S_>Подскажите пожалуйсто в чем ошибка.
Ошибка в том, что на уровне проекта указан макрос _UNICODE (или UNICODE, или оба), а имя файла передается в виде ANSI-строки. Правильно будет _T("filename.ext").
-- Alex Fedotov
Re: Проблема с CreateFile (не получается запись в файл)
Здравствуйте, Alex Fedotov, Вы писали:
AF>Ошибка в том, что на уровне проекта указан макрос _UNICODE (или UNICODE, или оба), а имя файла передается в виде ANSI-строки. Правильно будет _T("filename.ext").
Большое спасибо, теперь работает.