Ĺadny brzuch
Witam, od razu mówię, że szukałem, ale nic nie znalazłem, przynajmniej nic, o co mi chodzi. Otóż, robię pewien program. I tam się podaje login i hasło i adres strony, na jaką chce się zalogować. Np podaje się adres strony logowania do poczty onet. Podaje się swój mail i hasło. I jest przycisk loguj. No i jak zrobić. Aby po naciśnięciu tego przycisku otworzyła się domyślna przeglądarka systemu, a w niej od razu strona, w której jest się zalogowanym na konto, czyli np od razu nasza skrzynka. Albo chociaż jak zrobić, aby po nasiśnięciu przycisku loguj na odpowiedniej stronie (podanej przez user'a) w polach login i hasło pokazały się podane dane? Proszę o pomoc i z góry dz :) Tylko jak otworzyć domyślną przeglądarkę systemu? I jak potem przejść w tej przeglądarce na tą stronę i się zalogować.
Albo przynajmniej powiedzcie, jak po wciśnięciu loguj tresc memo1 przeszla do pola z mailem a tresc memo2 do pola z hasłem? Np na poczta.onet.pl? No np jak bym wykorzystał WebBrowser do tego, to zeby tylko tak jak pisałem tresc memo1 i 2 do odpowiednich pol logowania przeszla. Jak to zrobić?
Użytkownik gates22 edytował ten post 22 sierpień 2008, 19:48
Witam, od razu mówię, że szukałem, ale nic nie znalazłem, przynajmniej nic, o co mi chodzi. Otóż, robię pewien program. I tam się podaje login i hasło i adres strony, na jaką chce się zalogować. Np podaje się adres strony logowania do poczty onet. Podaje się swój mail i hasło. I jest przycisk loguj. No i jak zrobić. Aby po naciśnięciu tego przycisku otworzyła się domyślna przeglądarka systemu, a w niej od razu strona, w której jest się zalogowanym na konto, czyli np od razu nasza skrzynka. Albo chociaż jak zrobić, aby po nasiśnięciu przycisku loguj na odpowiedniej stronie (podanej przez user'a) w polach login i hasło pokazały się podane dane? Proszę o pomoc i z góry dz :) Tylko jak otworzyć domyślną przeglądarkę systemu? I jak potem przejść w tej przeglądarce na tą stronę i się zalogować.
Albo przynajmniej powiedzcie, jak po wciśnięciu loguj tresc memo1 przeszla do pola z mailem a tresc memo2 do pola z hasłem? Np na poczta.onet.pl? No np jak bym wykorzystał WebBrowser do tego, to zeby tylko tak jak pisałem tresc memo1 i 2 do odpowiednich pol logowania przeszla. Jak to zrobić?
ad1.Jeśli jest taka możliwość to dane do logowania do skryptu wyślij getem a jeśli poczta jest obsługiwana przez post to przeanalizuj formularz stronki i wyślij dane postem. Cyrkiel kiedyś pokazał przykład jak można dane przesłać postem do skryptu php
ad2. Niewykonalne dla dowolnej strony. Strony mają różną konstrukcje.
pomysł chyba nie wypali bo nie można wygenerować url żeby się automatycznie zalogować, jak się logujesz do jakiegoś serwisu to serwer przesyła do klienta (w tym przypadku twój program) specjalne unikalne pliki, takie jak cookies, czy pliki sesji. Więc te informację otrzyma twój program a nie przeglądarka w systemie.
Pomysł ten będzie działać jeśli w twoim programie będzie np. komonent WebBrowser i w nim będziesz przeglądać np. pocztę.
A do wprowadzania danych do pól w WebBroser (dla adresu: http://poczta.onet.pl/login.html) użyj tego: (trzeba przynajmniej trochę znać HTML i JS)
WebBrowser1.OleObject.document.login.e.value := 'LOGIN'; WebBrowser1.OleObject.document.login.p.value := 'HASŁO';
dzięki za odp :)
No tak, teraz tak sobie myślę, i faktycznie, mogę używać WebBrowsera. A to tylko na poczta.onet? Bo jeśli tak, to co wpisywać jak jest np inne poczty?
musisz do każdej poczty zrobić osobny kod odpowiedzialny za wprowadzenie LOGINU i HASŁA (2-3 linijki na każdą pocztę)
rozumiem. Dzięki za pomoc.
a proszę, powiedz jeszcze, czemu w Delphi 7 nie mogę zainstalować żadnego nowego komponentu (.pas). Zawsze podczas kompilacji pokazuje mi błąd w linijce z konstruktorem i błędem z override. To zawsze w dclusr jakiś błąd. Może wiesz, jak temu zaradzić?
trochę odbiegamy od tematu, ale musiałbym widzieć jaki masz dokładnie komunikat
public constructor Create(AOwner: TComponent); override; - w tym mi pokazuje Cannot override a static method.
Witam, mam pytanie :) Czy mogłby mi ktoś doradzic jak takie cos zastosować na stronie ogame.pl?? :) bo probowałem i jakos mi to nie wychodzi :(
bardzo proszę o pomoc :) POZDRAWIAM
Witam. Pokaż co i jak próbowałeś
Nie mam jak sprawdzić ale powino być tak:
WebBrowser1.OleObject.document.loginForm.login.value := 'LOGIN'; WebBrowser1.OleObject.document.loginForm.pass.value := 'HASŁO';
Witam;) problem juz rozwiązałem, i podaje go:) jest uniwersalny;)
function FillForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean; var i, j: Integer; FormItem: Variant; begin Result := False; //no form on document if WebBrowser.OleObject.document.all.tags('FORM').Length = 0 then begin Exit; end; //count forms on document for I := 0 to WebBrowser.OleObject.document.forms.Length - 1 do begin FormItem := WebBrowser.OleObject.document.forms.Item(I); for j := 0 to FormItem.Length - 1 do begin try //when the fieldname is found, try to fill out if FormItem.Item(j).Name = FieldName then begin FormItem.Item(j).Value := Value; Result := True; end; except Exit; end; end; end; end;
a wypełniamy edita po
FillForm(WebBrowser1, 'nazwa edita w html','czym wypelnic');
PS. wie ktoś mzoe w jaki sposob kliknąc w button wewnątrz WebBrowsera??:)
POZDRAWIAM
Siedziałem chyab przez pół wieczoru nad dokładnie tym samym problemem:) no ale udało mi sie go rozgryźdź :D
żeby kliknąć w buttona wystarczy w WB tyle:
WebBrowser1.OleObject.document.Loginform.submitInput.click;
proste że aż boli, a 5 godzin z głowy. działa na ogame z resztą u góry
Użytkownik szmek2 edytował ten post 20 lipiec 2009, 00:59
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Albo przynajmniej powiedzcie, jak po wciśnięciu loguj tresc memo1 przeszla do pola z mailem a tresc memo2 do pola z hasłem? Np na poczta.onet.pl? No np jak bym wykorzystał WebBrowser do tego, to zeby tylko tak jak pisałem tresc memo1 i 2 do odpowiednich pol logowania przeszla. Jak to zrobić?
Użytkownik gates22 edytował ten post 22 sierpień 2008, 19:48
Witam, od razu mówię, że szukałem, ale nic nie znalazłem, przynajmniej nic, o co mi chodzi. Otóż, robię pewien program. I tam się podaje login i hasło i adres strony, na jaką chce się zalogować. Np podaje się adres strony logowania do poczty onet. Podaje się swój mail i hasło. I jest przycisk loguj. No i jak zrobić. Aby po naciśnięciu tego przycisku otworzyła się domyślna przeglądarka systemu, a w niej od razu strona, w której jest się zalogowanym na konto, czyli np od razu nasza skrzynka. Albo chociaż jak zrobić, aby po nasiśnięciu przycisku loguj na odpowiedniej stronie (podanej przez user'a) w polach login i hasło pokazały się podane dane? Proszę o pomoc i z góry dz :) Tylko jak otworzyć domyślną przeglądarkę systemu? I jak potem przejść w tej przeglądarce na tą stronę i się zalogować.
Albo przynajmniej powiedzcie, jak po wciśnięciu loguj tresc memo1 przeszla do pola z mailem a tresc memo2 do pola z hasłem? Np na poczta.onet.pl? No np jak bym wykorzystał WebBrowser do tego, to zeby tylko tak jak pisałem tresc memo1 i 2 do odpowiednich pol logowania przeszla. Jak to zrobić?
ad1.Jeśli jest taka możliwość to dane do logowania do skryptu wyślij getem a jeśli poczta jest obsługiwana przez post to przeanalizuj formularz stronki i wyślij dane postem. Cyrkiel kiedyś pokazał przykład jak można dane przesłać postem do skryptu php
ad2. Niewykonalne dla dowolnej strony. Strony mają różną konstrukcje.
pomysł chyba nie wypali bo nie można wygenerować url żeby się automatycznie zalogować, jak się logujesz do jakiegoś serwisu to serwer przesyła do klienta (w tym przypadku twój program) specjalne unikalne pliki, takie jak cookies, czy pliki sesji. Więc te informację otrzyma twój program a nie przeglądarka w systemie.
Pomysł ten będzie działać jeśli w twoim programie będzie np. komonent WebBrowser i w nim będziesz przeglądać np. pocztę.
A do wprowadzania danych do pól w WebBroser (dla adresu: http://poczta.onet.pl/login.html) użyj tego: (trzeba przynajmniej trochę znać HTML i JS)
WebBrowser1.OleObject.document.login.e.value := 'LOGIN'; WebBrowser1.OleObject.document.login.p.value := 'HASŁO';
dzięki za odp :)
No tak, teraz tak sobie myślę, i faktycznie, mogę używać WebBrowsera. A to tylko na poczta.onet? Bo jeśli tak, to co wpisywać jak jest np inne poczty?
musisz do każdej poczty zrobić osobny kod odpowiedzialny za wprowadzenie LOGINU i HASŁA (2-3 linijki na każdą pocztę)
rozumiem. Dzięki za pomoc.
a proszę, powiedz jeszcze, czemu w Delphi 7 nie mogę zainstalować żadnego nowego komponentu (.pas). Zawsze podczas kompilacji pokazuje mi błąd w linijce z konstruktorem i błędem z override. To zawsze w dclusr jakiś błąd. Może wiesz, jak temu zaradzić?
trochę odbiegamy od tematu, ale musiałbym widzieć jaki masz dokładnie komunikat
public constructor Create(AOwner: TComponent); override; - w tym mi pokazuje Cannot override a static method.
Witam, mam pytanie :) Czy mogłby mi ktoś doradzic jak takie cos zastosować na stronie ogame.pl?? :) bo probowałem i jakos mi to nie wychodzi :(
bardzo proszę o pomoc :) POZDRAWIAM
Witam. Pokaż co i jak próbowałeś
Nie mam jak sprawdzić ale powino być tak:
WebBrowser1.OleObject.document.loginForm.login.value := 'LOGIN'; WebBrowser1.OleObject.document.loginForm.pass.value := 'HASŁO';
Witam;) problem juz rozwiązałem, i podaje go:) jest uniwersalny;)
function FillForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean; var i, j: Integer; FormItem: Variant; begin Result := False; //no form on document if WebBrowser.OleObject.document.all.tags('FORM').Length = 0 then begin Exit; end; //count forms on document for I := 0 to WebBrowser.OleObject.document.forms.Length - 1 do begin FormItem := WebBrowser.OleObject.document.forms.Item(I); for j := 0 to FormItem.Length - 1 do begin try //when the fieldname is found, try to fill out if FormItem.Item(j).Name = FieldName then begin FormItem.Item(j).Value := Value; Result := True; end; except Exit; end; end; end; end;
a wypełniamy edita po
FillForm(WebBrowser1, 'nazwa edita w html','czym wypelnic');
PS. wie ktoś mzoe w jaki sposob kliknąc w button wewnątrz WebBrowsera??:)
POZDRAWIAM
Siedziałem chyab przez pół wieczoru nad dokładnie tym samym problemem:) no ale udało mi sie go rozgryźdź :D
żeby kliknąć w buttona wystarczy w WB tyle:
WebBrowser1.OleObject.document.Loginform.submitInput.click;
proste że aż boli, a 5 godzin z głowy. działa na ogame z resztą u góry
Użytkownik szmek2 edytował ten post 20 lipiec 2009, 00:59