przywoływanie okna innego programu

dział ogólny

przywoływanie okna innego programu

Nowy postprzez Manianass » środa, 31 sierpnia 2016, 21:33

Program Boot do gry.

Pisze program którego zadaniem jest sprawdzenie koloru pikseli i w zależności jaki kolor program wykonuje odpowiednią czynność i to wiem jak zrobić.
Okno mojego programu jest zawsze na pierwszym planie (wiem jakto zrobić).
Problem jest taki jak zrobić zeby na pierwszy plan wyskakiwała przeglądarka chrome. Mój program jest na 1 planie ale on nie przeszkadza sprawdzam kolory w innym miejscu.
Wywołanie programu tak jakby kliknąć myszką na pasku zadań ale jak jest progarm otwary to sie zminimalizuje, a ja tego nie chce. Nie wiem czy dobrze opisałem czego nie wiem jak zrobić.

Z góry dziękuje Marcin.
Avatar użytkownika
Manianass
Bladawiec
Bladawiec
 
Posty: 27
Dołączył(a): środa, 11 listopada 2015, 00:45
Lokalizacja: Lubin
Podziękował : 6
Otrzymał podziękowań: 0
System operacyjny: win 7
Kompilator: Builder C++
Gadu Gadu: 0
    Windows 7Chrome

Re: przywoływanie okna innego programu

Nowy postprzez Cyfrowy Baron » środa, 31 sierpnia 2016, 22:43

Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows 7Firefox

Re: przywoływanie okna innego programu

Nowy postprzez Manianass » piątek, 2 września 2016, 20:42

Tak działa, tylko jak przeglądarka nie jest zminimalizowana tylko jest na 2 planie to ją minimalizuje jak jest wybrana inna karta to nie działa ale jak jest zminimalizowana i ustawiona na odpowiedniej karci to działa piękne.

KOD cpp:     UKRYJ  

void BringWindowToFront(HWND hWnd)
{
 bool Result;
 DWORD ForegroundWindowThreadID;
 DWORD WindowThreadID;
 if(hWnd != GetForegroundWindow())
 {
  ForegroundWindowThreadID = GetWindowThreadProcessId(GetForegroundWindow(), NULL);
  WindowThreadID = GetWindowThreadProcessId(hWnd, NULL);
  if(ForegroundWindowThreadID != WindowThreadID)
  {
   AttachThreadInput(ForegroundWindowThreadID, WindowThreadID, true);
   SetForegroundWindow(hWnd);
   AttachThreadInput(ForegroundWindowThreadID, WindowThreadID, false);
  }
  else
   SetForegroundWindow(hWnd);
  ShowWindow(hWnd, SW_RESTORE);
 }

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    BringWindowToFront(FindWindow(NULL, "The Settlers Online - Czarci Gaj [Realm 5] - Google Chrome"));    
}
/
 


z Twojej strony skopiowałem
Avatar użytkownika
Manianass
Bladawiec
Bladawiec
 
Posty: 27
Dołączył(a): środa, 11 listopada 2015, 00:45
Lokalizacja: Lubin
Podziękował : 6
Otrzymał podziękowań: 0
System operacyjny: win 7
Kompilator: Builder C++
Gadu Gadu: 0
    Windows 7Chrome


  • Podobne tematy
    Odpowiedzi
    Wyświetlone
    Ostatni post

Powrót do Ogólne problemy z programowaniem

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 36 gości

cron