PDA

View Full Version : سوال: GetDlgItemText()



MSJazayeri
شنبه 13 مهر 1387, 00:33 صبح
من کد زیر رو با VC++ 2008 نوشتم:

LPTSTR Result = NULL;
GetDlgItemText(hwnd, IDC_MAIN_EDIT, Result, 400);
MessageBox(hwnd, Result, "Text", MB_OK | MB_ICONINFORMATION);

اما متن Message Box همیشه NULL هست:متعجب:.
اگر منو راهنمایی کنید ممنون میشم.

Nima_NF
شنبه 13 مهر 1387, 00:44 صبح
به دلیل آنکه LPTSTR معادل *WCHAR هست که به شکلی که شما نوشتید یعنی فقط یک اشاره گر تنها (نه رشته با طول خاصی) که آن هم به NULL اشاره می کند.

در یونیکد باید رشته را به این شکل تعریف کنید مثلا با طول 400 شما (پیش فرض در VC++2005 به بعد یونیکد هست):



TCHAR Result[400];

در غیر یونیکد:



char Result[400];