HWND listBox = GetDlgItem(hDlg, IDC_SCORES_LIST);
LRESULT r = SendMessage (listBox , LB_GETCURSEL, 0, 0);
LRESULT l = SendMessage (listBox , LB_GETTEXTLEN, (WPARAM)r, 0);
char* text = new char [l +1];
SendMessage (listBox, LB_GETTEXT, (WPARAM)r, (LPARAM)text);
Результат этого кода должен состоять в том, что что-то вроде «Уровень 2» хранится в «тексте». Однако по какой-то причине в конце этого в «текст» сохраняется только «L». Я ломаю себе голову на то, что может быть причиной этого, но я ничего не могу придумать.C++/win32 - только LB_GETTEXT возвращает только один символ
Вы пробовали "wchar_t * text = new wchar_t [l + 1]"? Или изменить проект с Unicode на ANSI? – BlueWanderer