C
Ist ziemlich verbaut und schon wieder verschmissen, aber hier:
bool __stdcall windowEnumerateProcess(HWND windowHandle, LPARAM lParam)
{
DWORD currentProcessId;
GetWindowThreadProcessId(windowHandle, ¤tProcessId);
if(currentProcessId == KlasseA::getInstance().getServerProcessId())
KlasseA::getInstance().setServerWindowHandle(windowHandle);
return true;
}
serverProcessSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
serverProcessEntry.dwSize = sizeof(serverProcessEntry);
handleFound = Process32First(serverProcessSnapShot, &serverProcessEntry);
for(; handleFound; handleFound = Process32Next(serverProcessSnapShot, &serverProcessEntry))
{
serverProcessHandle = OpenProcess(PROCESS_QUERY_INFORMATION, false, serverProcessEntry.th32ProcessID);
rowHelper = serverProcessEntry.szExeFile;
if(rowHelper == dataBase[0])
{
// MessageBox(NULL, "vcded.exe found", "", MB_OK);
serverProcessId = serverProcessEntry.th32ProcessID;
EnumWindows(reinterpret_cast<WNDENUMPROC>(windowEnumerateProcess), 0);
serverListBoxHandle = FindWindowEx(serverWindowHandle, 0, "ListBox", 0);
serverEditFieldHandle = FindWindowEx(serverWindowHandle, 0, "Edit", 0);
EnableWindow(buttonHandles[1], true);
SendMessage(labelHandle, WM_SETTEXT, 0, reinterpret_cast<LPARAM>(" Server: FOUND"));
break;
}
}
MfG