【发布时间】:2010-02-09 19:07:38
【问题描述】:
所以 GetWindowText 在 MSDN 上声明如下:
int GetWindowText(
HWND hWnd,
LPTSTR lpString,
int nMaxCount
);
但是为了让代码正常工作,我们必须将第二个参数声明为
TCHAR[255] WTitle;
然后调用函数GetWindowText(hWnd,Wtitle,255);
LPTSTR 是指向 tchar 数组的指针,所以声明 LPTSTR 类似于声明 TCHAR[]?但它不是这样工作的。
使用 TCHAR[] 时,程序返回有效的 GetWindowText 结果(它是一个整数,等于标题中的符号数)。问题是:如何从 TCHAR[] 中获得确切的标题?像
TCHAR[255] WTitle;
cout<< WTitle;
或
cout<< *Wtitle;
返回数字。如何将其与给定的字符串进行比较?
TCHAR[4] Test= __T("TEST")
if (WTitle == Test) do smth
也不行。
【问题讨论】:
-
鉴于您已经在编写一个无法以任何方式编译的程序,请考虑放弃 TCHAR。它已经过时了,请使用 wchar_t。