Klasa okna Gadu-Gadu

0

Chodzi o to, że klasa tego okna jest inna na różnych komputerach. Przykład:

Afxb00000005:003202BD (u mnie)
Afxb00000005:0001030D (u kumpla)

Od czego zależy ta klasa? Może można w funkcji FindWindow zignorować tę ostatnią część nazwy klasy, która jest zmienna.

Z góry THX za pomoc.

0

Moze zrob tak, ze pobierasz:

Nick(nr_gg)
0

Dzięki za odpowiedz. Rozważałem to wyjście, lecz wolałbym coś bardziej uniwersalnego. W ostateczności, jeżeli nie będzie innych sposobów, można to wykorzystać, ale wolałbym pobierać uchwyt poprzez klasę okna.

0

zauwaz ze nie tylko glowne okno ma taka klase.

0

właśnie, BTW jak można się odwołać do jednego z okien jeśli mają taką samą klasę a nie znam captionów :/ i jak zmienić w programie już swoim klasę już podczas działania ?

0

EnumWindows

0

Kurcze siedze nad tym GG i nie wiem juz sam :|
Taki problem znalazlem uchwyt Okna "Status opisowy" ... ale !!!
Wszystko jest OK jak okno jest otwarte bo jak go zamkne to pobierajac nawet Caption okna nie mam juz "Status opisoty" tylko ... "KerioPersonalFirewallMainWindow" :(

To sie uchwyty zmieniaja jak minimalizuje ono czy zamykam :/ ???

var
  Form1: TForm1;
  GGH  : THandle;
  Bufor: Array [0..255] of Char;

implementation

{$R *.dfm}

procedure TForm1.Button3Click(Sender: TObject);
begin
  GGH := FindWindow('#32770', nil); //uchwyt okna StatusOpisowy - NIBY !!!
  if GGH = 0 then Caption := 'Nie' else Caption := 'Tak';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  GetWindowtext(GGH, Bufor, SizeOf(Bufor));
  Edit1.Text := Bufor;
  ShowWindow(GGH, SW_HIDE);
end;

Moze ktos wie o co tu chodzi ... bo ja sie nie znam na tym za dobrze 8-|

0

moze ci sie przyda jeden z moich prehistorycznych programow
http://lofix.satanbsd.org/programy/hawkeye.zip

0

Dzieki Lofix na pewno sie przyda ... mielam kiedys identyczny programik ... zwal sie pasiak.exe chyba i z 4P sciaglem jak sie nie myle :) identyczne dzialanie mial :)

Jeszcze raz dzieki [browar]

[<font color="brown">dopisane</span>]

;( to samo sie dzieje ;/ opis pobieram jak mam otwarte okno Status opisowy ;/ qrde jak pobrac opis i programowo go zmienic [glowa] [glowa] [glowa]

0
mitring napisał(a)

Taki problem znalazlem uchwyt Okna "Status opisowy" ... ale !!!
Wszystko jest OK jak okno jest otwarte bo jak go zamkne to pobierajac nawet Caption okna nie mam juz "Status opisoty" tylko ... "KerioPersonalFirewallMainWindow" :(

Widocznie oba okna (gg oraz kerio firewalla) mają taką samą klasę. Jak otwierasz okno statusu opisowego w gg, to jest ono pierwsze w kolejce, więc można je znaleźć przez findwindow. Jak je zamkniesz, to nie da się go znaleźć, więc funkcja zwraca uchwyt następnego w kolejności okna, czyli tego od kerio. Proponuję oprzeć to jakoś o proces gg.exe, np. znaleźć główne okienko procesu a potem szukać wśród jego childów.

0
thenkles napisał(a)

Proponuję oprzeć to jakoś o proces gg.exe, np. znaleźć główne okienko procesu a potem szukać wśród jego childów.

OK kapuje :) glowne okno GG i uchwyt pobieram bez problemu ... ale jak pozniej dobrac sie do child jesli jest ktos kto bedzie mogl mi to wytlumaczyc bo moja zabawa z uchwytami dopiero sie zaczyna [wstyd] i jak ktos poda jakies wskazowki albo cos .. jak sie do tego zabrac ... bo ja sie przyznaje i tego nie wiem 8-0
<font size="1">
PS. Jesli mozna prosic to nie piszcie Google + F1 or MSDN</span>
Dzieki i pozdrawiam

0

findwindowex

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