Program klikający w ściśle określony punkt okienka

0

W moim nowym monitorze przy każdym uruchomieniu środowiska graficznego (MS Windows 6.1) muszę otworzyć okienko obsługi sterowników, by nacisnąć jeden przycisk który znacząco poprawia jakość obrazu. Chyba nie trzeba pisać jak bardzo to mnie wkurza ;) Tutaj moje pytanie- czy da się napisać program, który po odpaleniu odpala okienko innego programu i klika w punkt o ściśle określonych współrzędnych? Jeśli tak, to prosiłbym o jakieś wskazówki, np. jakiej funkcji z danej biblioteki użyć .

0

Można, ale prościej byłoby chyba dowiedzieć się co ten przycisk robi i napisać program który zrobi to samo.

0
Tezcatlipoca napisał(a)

Można, ale prościej byłoby chyba dowiedzieć się co ten przycisk robi i napisać program który zrobi to samo.

Po prostu muszę wejść do okienka i nacisnąć "Zastosuj" , wtedy automagicznie wszystko się reguluje. Zawsze mogę poznać dwie metody rozwiązania tego problemu, więc byłbym wdzięczny za jakiekolwiek rady/wskazówki. Niestety biblioteka windows.h (a w niej pewnie są jakieś przydatne funkcje) jest mi słabo znana.

0

W takim razie zamykam swoje pytanie: czy po tym http://guidecpp.cal.pl/winapi,window kursie będę miał wiedzę wystarczającą do rozwiązania mojego problemu?

2
HWND WINAPI FindWindow(
  __in_opt  LPCTSTR lpClassName,
  __in_opt  LPCTSTR lpWindowName
);

tą funkcją uzyskasz uchwyt do okna programu

int hWnd = FindWindow(null, "nazwa okienka twojego programu");
HWND WINAPI FindWindowEx(
  __in_opt  HWND hwndParent,
  __in_opt  HWND hwndChildAfter,
  __in_opt  LPCTSTR lpszClass,
  __in_opt  LPCTSTR lpszWindow
);

tą funkcją uzyskasz uchwyt do przycisku

int buttonWnd = FindWindowEx(hWnd, 0, null, "nazwa wyświetlana na przycisku");
LRESULT WINAPI SendMessage(
  __in  HWND hWnd,
  __in  UINT Msg,
  __in  WPARAM wParam,
  __in  LPARAM lParam
);

tą funkcją "naciśniesz" przycisk

SendMessage(buttonWnd, 0x0F5, 0, 0);


SendMessage(hWnd, 0x0112, 0xF060, 0);

Tą funkcją zamkniesz program

Dodaj do autostartu oba programy, żeby uruchomiły się przy starcie systemu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1