WinAPI - Odczytanie tekstu kontrolki

0

Hej. Próbuję pobrać tekst z kontrolki Edit. Robię to w sposób następujący:

HWND hPortEdit = GetDlgItem(hwnd, ID_EDIT_PORT);
char bufor[100];
SendMessage(hPortEdit, WM_GETTEXT, (WPARAM)100, (LPARAM)bufor);

Dlaczego to nie działa? Dodałem sobie watch, żeby podejrzeć co zawiera tablica bufor, to po każdym znaku w tablicy jest znak NULL. Np. wpisałem do pola Edit ciąg "125", to tablica bufor będzie zawierała następujące znaki : {'1', '\0', '2', '\0', '5', '\0'}. Nie rozumiem takiego zachowania. Czy ktoś może mi wytłumaczyć? Programuję w Visual Studio 2012. Z góry dzięki.

0

Chyba wszystko jest ok tylko ze masz ustawione Unicode a więc tak to będzie wyglądało. Sprawdź sobie na MessageBox i zobaczysz ze normalnie ci się wyświetli "125".

MessageBox(hwnd, (LPCWSTR)bufor, NULL, 0);
0

Działa. Dzięki. Nie pamiętałem o tym. Pozdrawiam.

0
wchar_t bufor[100];

1 użytkowników online, w tym zalogowanych: 0, gości: 1