如何避免在EnumWindows中使用全局variables在Win32 C API中查找窗口?

在使用EnumWindows (或FindChildWindows )Win32 API时如何避免使用全局variables?

我大概下面的代码:

 HWND prog_hwnd; BOOL CALLBACK ProgEnumProc(HWND hwnd, LPARAM lParam) { if (...) { // found the right hwnd, assign it to prog_hwnd; prog_hwnd = hwnd; return FALSE; } return TRUE; } void FindProgHwnd() { EnumWindows(ProgEnumProc, 0); } int main() { FindProgHwnd(); if (prog_hwnd) { // found prog_hwnd, but it's global variable } } 

正如你所看到的,要find正确的hwnd,我必须使用全局variablesprog_hwnd 。 我想避免使用全局variables。 有没有办法做到这一点?

Solutions Collecting From Web of "如何避免在EnumWindows中使用全局variables在Win32 C API中查找窗口?"