Макрос Listview_getitem() возвращает пустую строку в win32 api
Когда я пытаюсь удалить выбранный элемент из списка, функция "ListView_GetItem()" возвращает пустой текст. Здесь только что добавлен мой код для получения выделенного текстового элемента из списка.
LVITEM lvitem; int item = ListView_GetNextItem(listView, -1, LVNI_SELECTED); if (selectedItem != -1) { wchar_t str[1024]; lvitem.cchTextMax= 552; lvitem.mask= LVIF_TEXT; lvitem.iItem= selectedItem; lvitem.pszText= str; ListView_GetItem(listView, &lvitem); // Here Printing "lvi.pszText" text }
Примечание: Я использую ОС windows 10. Это работает правильно для меня. Но это не работает в нескольких системах, которые также имеют ту же ОС Windows 10.
Дайте мне любые предложения, чтобы решить эту проблему...
Что я уже пробовал:
Когда я пытаюсь удалить выбранный элемент из списка, функция "ListView_GetItem()" возвращает пустой текст. Здесь только что добавлен мой код для получения выделенного текстового элемента из списка.
LVITEM lvitem; int item = ListView_GetNextItem(listView, -1, LVNI_SELECTED); if (selectedItem != -1) { wchar_t str[1024]; lvitem.cchTextMax= 552; lvitem.mask= LVIF_TEXT; lvitem.iItem= selectedItem; lvitem.pszText= str; ListView_GetItem(listView, &lvitem); // Here Printing "lvi.pszText" text }
Примечание: Я использую ОС windows 10. Это работает правильно для меня. Но это не работает в нескольких системах, которые также имеют ту же ОС Windows 10.
KarstenK
опечатка: max char должен быть <512 :-O
Rick York
Вы пробовали печатать str? Вот где должен быть помещен текст.
Piraisudan
Да, я пытался. Но это работает в какой-то системе и не работает в какой-то другой системе. Чего мне не хватает? Или что это за причина?