[GGLite][If] Problem z GGLogon

Gandziorz

Użytkownik
Dołączył
Luty 5, 2005
Posty
114
Witam,
Napisałem sobie logowanie w GGLite i coś kurde nie wyszło jak powinno. Non-stop pokazuje że nie można się połączyć nawet jak się wpisze dobre hasło i login.
Kod:
procedure TForm1.Button1Click(Sender: TObject);

begin

{

Najpierw sprawdzimy czy wszystkie warunki są spełnione tzn. czy wszystkie pola

uzupełnione o wartosci.

}

if (NumEdit1.Text = '') or (NumEdit1.Text <= '0') or (Edit1.Text = '') then

begin

{

Program wykrył że ktores z pol nie spelnia wymagan

}

MessageDlg('Program nie może się połączyć z serwerem Gadu-Gadu ponieważ nie wprowadzono żadnych danych! Sprawdź pola Numer (numer musi być większy od 0) i Hasło czy są uzupełnione, a następnie spróbuj ponownie się połączyć.', mtWarning, [mbOK], 0);

Exit;

end else

begin

GGLite1.Login := StrToInt(NumEdit1.Text); // pobieramy numer GG

GGLite1.Password := Edit1.Text; // pobieramy haslo

GGLite1.GGInitHost; // pobieramy host GG

GGLite1.GGLogon; // teraz się łączymy

GGLite1.UserStatus:= usAvailable; //ustawiamy status na dostępny

GGLite1.GGChangeUserStatus;  //zmieniamy status

end;

{

Sprawdzamy czy zalogowalismy sie poprawnie do Gadu-Gadu.

GGlogon powinna zwrocic wartosc 0 jezeli jestesmy polaczeni.

}

if GGLite1.GGLogon <> 0 then

begin

{

Jezeli sie nie polaczylismy wyskakuje error

}

MessageDlg('Nie można się połaczyć z serwerem GG!', mtError, [mbOK], 0);

Exit; //nie kontynuujemy dalej bo po co jak nie jestesmy zalogowani

end

else   //przeciwienstwo czyli ze sie polaczylismy

begin

Memo1.Lines.Add('Połączono się z serwerem Gadu-Gadu.');

Label4.Caption := 'Dostępny';

Label4.Font.Color := clGreen;

Button1.Enabled := false;

NumEdit1.Enabled := false;

Edit1.Enabled := false;

Button2.Enabled := true;

end;

end;
 

Dark Smark

Były Moderator
Dołączył
Kwiecień 29, 2006
Posty
1953
Jak sie kupuje gglite to jest dołączone źródło gotowego klienta gadu-gadu (ggclone).
Przejrzyj źródełko i zobacz jakie tam są rozwiązania.
 

Gandziorz

Użytkownik
Dołączył
Luty 5, 2005
Posty
114
Otóż logować się program loguje jak są dobre dane.
Ale potem szwankuje (wiesza się) i nie odpowiada na if, else i numer gg który wprowadziłem staje się niedostępny itp.
Wystarczy usunąć poniższy kod:
Kod:
if GGLite1.GGLogon() <> 0 then

begin

{

Jezeli sie nie polaczylismy wyskakuje error

}

MessageDlg('Nie można się połaczyć z serwerem GG!', mtError, [mbOK], 0);

Exit; //nie kontynuujemy dalej bo po co jak nie jestesmy zalogowani

end

else   //przeciwienstwo czyli ze sie polaczylismy

begin

Memo1.Lines.Add('Połączono się z serwerem Gadu-Gadu.');

Label4.Caption := 'Dostępny';

Label4.Font.Color := clGreen;

Button1.Enabled := false;

NumEdit1.Enabled := false;

Edit1.Enabled := false;

Button2.Enabled := true;

end;
I już program się loguje wspaniale jak podamy poprawne dane
<

Właśnie nie wiem co pokręciłem z tym if.

[ Dodano: 07-09-2007, 00:05 ]
Dobra chłopaki wiem co zrobiłem za błąd
<


Kod:
Kod:
if GGLite1.GGLogon() <> 0 then

begin

{

Jezeli sie nie polaczylismy wyskakuje error

}

MessageDlg('Nie można się połaczyć z serwerem GG!', mtError, [mbOK], 0);

Exit; //nie kontynuujemy dalej bo po co jak nie jestesmy zalogowani

end

else   //przeciwienstwo czyli ze sie polaczylismy

begin

Memo1.Lines.Add('Połączono się z serwerem Gadu-Gadu.');

Label4.Caption := 'Dostępny';

Label4.Font.Color := clGreen;

Button1.Enabled := false;

NumEdit1.Enabled := false;

Edit1.Enabled := false;

Button2.Enabled := true;

end;
Powinienem wstawić między wierszami:
Kod:
GGLite1.Login := StrToInt(NumEdit1.Text); // pobieramy numer GG

GGLite1.Password := Edit1.Text; // pobieramy haslo

GGLite1.GGInitHost; // pobieramy host GG
,a
Kod:
GGLite1.UserStatus:= usAvailable; //ustawiamy status na dostępny

GGLite1.GGChangeUserStatus;  //zmieniamy status
I już jest ok
<
 
Do góry Bottom