Ошибка связана с тем, что ваш заголовочный файл объявил char * ToLowerSTR(char *)
, тогда как ваш файл cpp имеет другую функцию, char * ToLowerSTR(WCHAR *)
Для правильного преобразования вам нужно передать длину буфера WCHAR в вашу функцию ToLowerStr
(Почему, кстати, ToLower, что он должен делать?). Вы не можете использовать sizeof
для переданного WCHAR *
- это даст вам размер указателя, а не длину буфера, на который он указывает.
bool charToWChar(char const * Source, wchar_t * Dest, size_t DestLen) {
return MultiByteToWideChar(CP_ACP, 0, Source, -1, Dest, DestLen) != 0;
}
Тогда назовите это так:
char const * myString = "abc";
wchar_t Buffer[100];
charToWChar(myString, Buffer, 100);