本人是菜鳥,麻煩懂的回答下,謝謝
用的是:VS2013/項目類型是:win32控制台應用程序
沒什麼幣,見諒= =
代碼
#include "stdafx.h"
#include <windows.h>
HWND hwnd;
LPCSTR 取程序類名(HWND 窗口句柄);
int _tmain(int argc, _TCHAR* argv[])
{
while (true)
{
hwnd = GetForegroundWindow();//取當前窗口
OutputDebugString(LPCSTR(取程序類名(hwnd)));
OutputDebugStringA(LPCSTR("\n"));
if (LPCSTR(取程序類名(hwnd)) == LPCSTR("CalcFrame"))//問題所在
{
printf("類名: %s\n", 取程序類名(hwnd));
MessageBox(NULL, TEXT("真"), TEXT("真"), MB_OK);
}
else
{
MessageBox(NULL, TEXT("假"), TEXT("假"), MB_OK);
}
}
return 0;
}
LPCSTR 取程序類名(HWND 窗口句柄)
{
TCHAR 類名[255];
GetClassName(窗口句柄, 類名, sizeof(類名) / sizeof(TCHAR));
return 類名;
}
(LPCSTR(取程序類名(hwnd)) == LPCSTR("CalcFrame")
不能這麼比
應該用
strcmp(取程序類名(hwnd), "CalcFrame") == 0