Skocz do zawartości

Recommended Posts

Napisano

Witam....mam następujący problem:

Chcę zdobyć uchwyt okna którego znam tylko część nazwy...myślę że najlepiej zobrazuje to przykład....Okno ma nazwe "Program 0", ale co jedną sekundę następuje funkcja inkrementacji...(czyli po sekundzie będzie "Program 2", po 2 sek "Program 3", itd....)...i nie wiem jak zrobic, aby funkcja FindWindow uzyskała uchwyt okna na podstawie wyrazu "Program"

Napisano

Kod nie jest pewnie najlepszej jakosci, ale dziala:

BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)
{
        AnsiString tmp,tmp2;
        char buf[100];
 GetWindowText(hwnd,buf,sizeof(buf));
 tmp=buf;
 tmp2=[tutaj fragment caption poszukiwanego okna];
 if (tmp.Pos(tmp2)==0)
  return true; //nie znalazlem szukaj dalej
 else
  {
   //znaleziono okno o caption zawierajacym podany fragment
   return false;
  }
}
Napisano

tylko mam zapytanie jszcze jedno....wszystko fajnie działa gdy zmienna HWND jest w funkcji...ale gdy dam ją jako zmienną globalną(chcę się odwołać do niej z innej funkcji) to nie chce mi znaleźć okna...używam builder6

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś zawartość bez formatowania.   Usuń formatowanie

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...