Как преобразовать char в LPCWSTR
Получаю данные из сети (строка в utf-8) в буфер char[512], который надо преобразовать в LPCWSTR. Подскажите, как это правильно сделать.
Невозможно преобразовать параметр из «const char [12]» в «LPCWSTR»
#include <windows.h> int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR.
Ошибка невозможно преобразовать аргумент 2 из «char *» в «LPCWSTR»
Вот кусок программы k++; char s; SetWindowText(hwnd, itoa(k, s, 10)); ругается на.
error C2440: =: невозможно преобразовать «char [8]» в «LPCWSTR»
Всем добрый вечер! Помогите исправить ошибку. Нужно заполнить структуру класса окна. В строке.
Ошибка: невозможно преобразовать «char [21]» в «LPCWSTR»
1>—— Построение начато: проект: Laba_8, Конфигурация: Debug Win32 —— 1> Исходный код.cpp.
А зачем тебе это?
Просто часто встречается, этот вопрос, когда задающий его создаёт проект с использованием, например WinAPI функций. И у него выскакивает эта ошибка, т.к. по умолчанию проекты, создаваемые в Visual Studio настроены на работу с юникодо-строками.
Стоит лишь изменить настройки проекта и проблема исчезает.
У тебя не этот случай?
Сообщение от Kuzia domovenok
А зачем тебе это?
Просто часто встречается, этот вопрос, когда задающий его создаёт проект с использованием, например WinAPI функций. И у него выскакивает эта ошибка, т.к. по умолчанию проекты, создаваемые в Visual Studio настроены на работу с юникодо-строками.
Стоит лишь изменить настройки проекта и проблема исчезает.
У тебя не этот случай?
Судя по всему, полученную строку пытаются обработать API-функциями.
igorbelykh, вам на заметку: LPCWSTR — это обычный указатель на Unicode строку. Если уж такая надобность в использовании API функций, то используйте вместо char макрос TCHAR, подключив при этом библиотеку .
IMHO, самый оптимальный вариант.
Как работать с LPCWSTR? Как перевести char в это? И что это вообще такое?
Как работать с LPCWSTR? Как перевести char в это? И что это вообще такое?
char to LPCWSTR
Добрый день! Программе требуется вычислить свободное место на диске. Букву диска вводит.
Конвертация из массива char в LPCWSTR
Собственно, я хотел бы узнать, как можно конвертировать из массива char в LPCWSTR переменную?
Просто, как понял я, из окна ввода, можно получить текст только в массив char, а мне для работы требуется переменная LPCWSTR.
Заранее благодарен.
типы LPCWSTR, wchar*, char* и т.д.
Совсем запутался с этими типами подскажите книжку в которой все четко описано. как их переводить.
Ошибка преобразования ‘char [10]’ в ‘LPCWSTR’
Я изучаю API функции по книге Win32 API автор Юрий Щупак. Набрал программу "hello Word" второй.
WinAPI — Невозможно преобразовать параметр из ‘const char [26]’ в ‘LPCWSTR’
Здравствуйте!! Начал немного изучать WinAPI!! и тут возникла проблемка "Невозможно.
Сообщение от MadRabbit
Сообщение от MadRabbit
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
#include #include int main() { char str[1024]; cout"Enter input string\r\n"; cin>>str; //Определяем сколько символов нужно конвертировать long uLen = MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, NULL); //Выделяем память под нужное число символов WCHAR * lpszW = new WCHAR[uLen]; //Конвертируем str в WHAR MultiByteToWideChar(CP_ACP, 0, str, uLen, lpszW, uLen); cout"WCHAR string\r\n"; for(int i = 0; i uLen; i++) cout(char)lpszW[i]; return 0; }
WCHAR wchr[] = L"input string";
Сообщение от MadRabbit
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
wchar_t nickl[13]; //Переменная буфера switch(message) { case WM_COMMAND: //Если получил сообщение о действии с кнопкой { if(LOWORD(wParam) == ID_LBUTTON) //Если сообщение идет именно от нужной мне кнопки { if(HIWORD(wParam) == BN_CLICKED) //Если кнопка была нажата { SendMessage(hEdit,EM_GETLINE,0,LPARAM(nickl)); //отправляю сообщение окну ввода //ShellExecute(NULL,NULL,L"aos://357",NULL,NULL,1 ); Это запуск приложения, будет //использоваться у меня потом, ибо я еще не прикрутил проверку версии. } } } }
SendMessage(hEdit,EM_GETLINE,0,LPARAM(nickl));
Добавлено через 30 минут
Эмм, я сделал что-то не так?
LPWSTR nickl = NULL; GetWindowText(hEdit,nickl,13); MessageBox(hWnd,nickl,L"Ник:",MB_OK);
MB выводит NULL, если изменить NULL на что-то другое — получу это самое другое. То есть, GetWindowText, не вернуло мне не каких значений в nickl.
Сообщение от MadRabbit
MB выводит NULL, если изменить NULL на что-то другое — получу это самое другое. То есть, GetWindowText, не вернуло мне не каких значений в nickl.
GetWindowText(hEdit,nickl,13); long uLen = MultiByteToWideChar(CP_ACP, 0, nickl, -1, NULL, NULL); //Выделяем память под нужное число символов WCHAR * lpszW = new WCHAR[uLen]; //Конвертируем str в WCHAR MultiByteToWideChar(CP_ACP, 0, nickl, uLen, lpszW, uLen); MessageBox(hWnd,lpszW,L"Ник:",MB_OK);
MessageBox принимает в качестве параетров LPCTSTR
http://msdn.microsoft.com/en-u. s.85).aspx
откуда у тебя WCHAR ума не приложу.
Добавлено через 1 минуту
Сообщение от MadRabbit
MB выводит NULL, если изменить NULL на что-то другое — получу это самое другое. То есть, GetWindowText, не вернуло мне не каких значений в nickl.
GetWindowText(hEdit,nickl,13); long uLen = MultiByteToWideChar(CP_ACP, 0, nickl, -1, NULL, NULL); //Выделяем память под нужное число символов WCHAR * lpszW = new WCHAR[uLen]; //Конвертируем str в WCHAR MultiByteToWideChar(CP_ACP, 0, nickl, uLen, lpszW, uLen); MessageBox(hWnd,lpszW,L"Ник:",MB_OK);
Как преобразовать char в LPCWSTR
Получаю данные из сети (строка в utf-8) в буфер char[512], который надо преобразовать в LPCWSTR. Подскажите, как это правильно сделать.
Невозможно преобразовать параметр из «const char [12]» в «LPCWSTR»
#include <windows.h> int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR.
Ошибка невозможно преобразовать аргумент 2 из «char *» в «LPCWSTR»
Вот кусок программы k++; char s; SetWindowText(hwnd, itoa(k, s, 10)); ругается на.
error C2440: =: невозможно преобразовать «char [8]» в «LPCWSTR»
Всем добрый вечер! Помогите исправить ошибку. Нужно заполнить структуру класса окна. В строке.
Ошибка: невозможно преобразовать «char [21]» в «LPCWSTR»
1>—— Построение начато: проект: Laba_8, Конфигурация: Debug Win32 —— 1> Исходный код.cpp.
А зачем тебе это?
Просто часто встречается, этот вопрос, когда задающий его создаёт проект с использованием, например WinAPI функций. И у него выскакивает эта ошибка, т.к. по умолчанию проекты, создаваемые в Visual Studio настроены на работу с юникодо-строками.
Стоит лишь изменить настройки проекта и проблема исчезает.
У тебя не этот случай?
Сообщение от Kuzia domovenok
А зачем тебе это?
Просто часто встречается, этот вопрос, когда задающий его создаёт проект с использованием, например WinAPI функций. И у него выскакивает эта ошибка, т.к. по умолчанию проекты, создаваемые в Visual Studio настроены на работу с юникодо-строками.
Стоит лишь изменить настройки проекта и проблема исчезает.
У тебя не этот случай?
Судя по всему, полученную строку пытаются обработать API-функциями.
igorbelykh, вам на заметку: LPCWSTR — это обычный указатель на Unicode строку. Если уж такая надобность в использовании API функций, то используйте вместо char макрос TCHAR, подключив при этом библиотеку .
IMHO, самый оптимальный вариант.
Как работать с LPCWSTR? Как перевести char в это? И что это вообще такое?
Как работать с LPCWSTR? Как перевести char в это? И что это вообще такое?
char to LPCWSTR
Добрый день! Программе требуется вычислить свободное место на диске. Букву диска вводит.