Stránka: 1 z 2
| [ Príspevkov: 31 ] | 1, 2 |
Autor | Správa |
---|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
Ako to dosiahnut? A nie iba tak hociako exec iexplorer+path ale potrebujem odoslat aj referer. (idHTTP ? )
|
|
Registrovaný: 11.01.09 Prihlásený: 07.05.24 Príspevky: 1385 Témy: 9 | 9 Bydlisko: Hrinova |
Takto?
Kód: ShellExecute(Self.WindowHandle,'open','www.pcforum.sk',nil,nil, SW_SHOWNORMAL);
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
no predpokladajme ze nemam spusteny ie, potom by to asi uz neslo .
Pre ilustraciu o co ide. Mame hlasovaciu sutaz v ktorej vyhrava ten kto ma najviac hlasovani. Pricom v ankete je povolene z tej istej ip hlasovat viackrat (oto vlastne ide) ale iba raz za hodinu. Spustenie samotneho linku nefunguje. preto treba ref. A rad by som to mal s ie alebo programovo, potom si to dam napr na HIDE a neotravuje ma to jak si to klika.
|
|
Registrovaný: 19.09.06 Prihlásený: 21.04.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... |
To by chcelo normalny request, nie riesit to takto pomocou "simulacie kliku", ale aj tak je najjednoduchsia cesta jednoducho na ten link kliknut pomocou autoklikeru, toto bol povodne autoklicker na facebook (bola aplikacia, ktora merala pocet klikov za 30s )
Kód: #include <windows.h> #include <stdio.h>
HWND hWnd;
int main(int argc, char* argv[]) { int coord=0x013B0209; getchar(); __asm { mov dword ptr ds:[hWnd],0x3020E } while(1) { SendMessageW(hWnd,WM_LBUTTONDOWN,0,coord); SendMessageW(hWnd,WM_LBUTTONUP,0,coord); } return 0; }
Je to sice C, ale volania su rovnake, staci trochu zmenit kod. do coord treba dat do horneho a dolneho slova suradnice, kam klikne (treba to nejako odmerat na obrazovkeň v pixeloch, neviem teraz ktora je X a Y, treba skusit. Do hWnd treba priradit handle aktualne okna, v ktorom je ten link, ktoru ziskats napr pomocou spy++, a potom staci nastavit nejaky cas, na ktory sa sleepne, v povolenom intervale hlasovacom.
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
no, ja som si spravil kliker. To nie je problem. Nastavim si tam x suradnic a bude mi to klikat dokola ale preto to chcem jak som pisal v poslednom poste lebo si predstav ze mi to bude bezat 24/7 . a ja teraz nemozem pracovat lebo mi beha kurzor furt? neprakticke
|
|
Registrovaný: 19.09.06 Prihlásený: 21.04.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... |
pri tomto nebeha, tam nepracujes s misou, len posles spravu
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
no prepac, ale nepozdava sa mi taketo jednorazove riesenie.
|
|
Registrovaný: 19.09.06 Prihlásený: 21.04.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... |
vies, ani mne, ale nakolko nemam delphi, nemam windows a taketo veci som s delphi robil naposledy 2 roky dozadu, tak som nemal ako otestovat to co sa da vygooglit, tak som to sem radsej nedaval . Ale ty mozes skusit google, vrati to mrte vela prispevkov.
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
Ano, ale na moj problem mi google nepomohol. Otvorit link, nato je milion prispevkov ale ja potrebujem otvorit link a zaroven poslat neaky referer. Ak takychto rieseni najdes mrte tak ich ukaz, alebo cez postu nech nespamujeme.
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
no neako neviem ani toto rozbehat, hadze to error
Kód: var MemoryStream:TMemoryStream; begin MemoryStream:=TMemoryStream.Create; IdHTTP1.get('service.easycall.pl/user.ipl '&pass='+pass.text,memorystream); MemoryStream.Position:=0; Memorystream.SaveToFile('zzz.txt'); Memo1.Lines.LoadFromStream(MemoryStream); MemoryStream.Free; Memo1.Lines.LoadFromFile('zzz.txt'); end;
|
|
Registrovaný: 19.09.06 Prihlásený: 21.04.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... |
netreba dat do uses potrebne kniznice? skus hodit ten error sem.
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
HTTP/1.0 501 Not implemented
-skor nieco nastavit
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
inak toto by malo fungovat, neviem preco nie
Kód: procedure TForm1.Button1Click(Sender: TObject); var Flags, Headers, TargetFrameName, PostData: OleVariant; Url, Ref: string; begin flags := '1'; targetframename := ''; postdata := ''; url := 'http://www.stranka.sk/x.html'; ref := 'http://www.stranka.sk'; headers := 'Referer: ' + ref + '#10' + '#13'; webbrowser1.Navigate(url, flags, targetframename, postdata, headers); end;
|
|
Registrovaný: 11.01.09 Prihlásený: 07.05.24 Príspevky: 1385 Témy: 9 | 9 Bydlisko: Hrinova |
Tak mne to funguje, stránku mi riadne načíta (mohol si aspoň napísať, kde to háďže chybu, čo vypísalo alebo niečo, čoho sa dá chytiť).
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
no ja skusam otvorit link, lenze aj ked ho otvaram takto tak nedostanem vyslednu stranku ale stranku s textom "No referer!"
edit: chyba bude inde, nie v kode
|
|
Registrovaný: 11.01.09 Prihlásený: 07.05.24 Príspevky: 1385 Témy: 9 | 9 Bydlisko: Hrinova |
Keďže píšeš, že chyba bude inde, zrejme si skúšal aj inú stránku. Fungovali ti správne? (inak poznámka k tomu kódu: #10 a #13 je bez apostrofov, lebo to sú znaky).
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 | |
Registrovaný: 11.01.09 Prihlásený: 07.05.24 Príspevky: 1385 Témy: 9 | 9 Bydlisko: Hrinova |
Na formulár si daj jeden TWebBrowser, jeden TButton a do OnClick buttonu daj presne toto:
Kód: procedure TForm1.Button1Click(Sender: TObject); var Flags, Headers, TargetFrameName, PostData: OleVariant; Url, Ref: string; begin
flags := '1'; targetframename := ''; postdata := ''; url := 'http://www.whatismyreferrer.com'; ref := 'http://www.whatismyreferrer.com'; headers := 'Referer: ' + ref + #10 + #13; webbrowser1.Navigate(url, flags, targetframename, postdata, headers);
end;
mne to tránku riadne načítalo. Skús to takto.
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
ved som pisal, chyba nieje v kode pretoze mi ten referer ukazuje pekne, ale bude to asi neako inak kontrolovane, nez len refererom...
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
Skusam poslat spravu o kliku ale nic sa nedeje. Zadavam suradnice na ktorych je button ale nieco je zle. (klikam sam naseba nie na cudziu aplikaciu)
Kód: wnd:=findwindow('',nil); dw := MakeLong(50,50); SendMessageW(wnd,WM_LBUTTONDOWN,MK_LBUTTON,dw); SendMessageW(wnd,WM_LBUTTONUP,MK_LBUTTON,dw);
|
|
Registrovaný: 19.09.06 Prihlásený: 21.04.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... |
nejde to preto, lebo funkcia FindWindow ti zakazdym failne koli tomu, ze jej nedavas dobre parametre, kedze prvy musi byt retazec, ktory oznacuje nazov triedy okna, a ty mu davas prazdny nazov, cize ho vlastne iba nenajde. Aj keby ho naslo, tak je problem s tym, ze musis najst handle konkretneho ovladacieho prvku na ktory chces kliknut, lebo to posle spravu iba jemu. Cize nieco ako wnd=FindWindow(0,'Form1'); by kliklo "pod" tlacitko, musis spravit wnd:=FindWindowEx(FindWindow(0,'Form1'),0,0,'Button1'); aby si nasiel handle toho, na co chces klinkut. Na druhej strane dost zavisi od konkretneho pripadu. Tlacitko v internet exploreri nie je plnohodnotne tlacitko, cize vyuzivas prvy sposob, kedze je to sucast hlavneho okna. to treba vediet este pred klikanim
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
ked som zadal WM_QUIT tak to slo, ci som zadal nazov okna alebo nie. A ja potrebujem "kliknut" na suradnice, aby to bolo univerzalne
|
|
Registrovaný: 19.09.06 Prihlásený: 21.04.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... |
ako vravim, pokial je to v okne prehliadaca, alebo v okne nejakej hry, tak sa to da "univerzalne" spravit tym jednym findwindow, ale pokial obsahuje dane okno klasicke tlacitka a ovladacie prvky, tak to asi bude vyzadovat iny pristup. Ano WM_QUIT mohol ist, findwindow vrati 0 ak je fail a zrejme sa nula puziva zaroven ako identifikator, ze to aplikacia posiela sama sebe. A kedze WM_QUIT nema nic spolocne s ovladacimi prvkami, nic to nemeni na veci, ze ak posles hlavnemu oknu spravu, neposles ju child oknu (tlacitku).
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
nj, treba najst komponentu lebo to klikne podnu. Skusal som to na button a v pohode ale webbrowser nie
Kód: procedure TForm1.Button1Click(Sender: TObject); var wnd :hwnd; dw:longint; begin wnd:=FindWindowEx(FindWindow(0,'Form1'),0,0,'WebBrowser1'); dw := MakeLong(300,230); SendMessageW(wnd,WM_LBUTTONDOWN,MK_LBUTTON,dw); SendMessageW(wnd,WM_LBUTTONUP,MK_LBUTTON,dw); end;
posielam suradnice na ktorych je hyperlink a nic sa nedeje
|
|
Registrovaný: 19.09.06 Prihlásený: 21.04.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... |
no ono komponent WebBrowser je dost specificky tym, ze nema caption WebBrowser1, dokonca nema ziadnu caption. Trieda WebBrowsera po vytvoreni sa vola 'Shell Embedding', problem nastava v okamihu ked spravis WebBrowser1.navigate..., ked sa napoji na server internet exploreru a handle sa zmeni, zmeni sa aj trieda okna na 'Internet Explorer_Server', ale uz nefiguruje medzi child oknami, cize nie je mozne najst ho pomocou findwindowex(findwindow(.....)); Vacsiu zmrdnost ako tento kod som uz dlho nevidel Takto to ide : wnd:=FindWindowEx(FindWindowEx(FindWindowEx(FindWindow(0,'Form1'),0,'Shell Embedding',0),0,'Shell DocObject View',0),0,'Internet Explorer_Server',0);
//pri najdeni tohto som pouzil Spy++ (velmi uzitocny tool) prilozeny k visual studio, kedze google nic nepovedal,
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
pekna "rekurzia", ale hlavne ze to funguje. No nedosiel by som ktomu sam v blizkej dobe jak nato pozeram. Vdaka
|
|
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
stopa27 píše: //pri najdeni tohto som pouzil Spy++ (velmi uzitocny tool) prilozeny k visual studio, kedze google nic nepovedal,
mozes mi ho supnut?
|
|
Registrovaný: 19.09.06 Prihlásený: 21.04.24 Príspevky: 749 Témy: 31 | 31 Bydlisko: Ružomberok&... | |
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 | |
Registrovaný: 21.12.08 Prihlásený: 14.07.16 Príspevky: 114 Témy: 21 | 21 |
inak... ked tam dam viac webbrowserov jak ich rozoznam podla handle? pretoze sa mi odkaz otvara nie v komponente ale v novom IE. tak som dal do OnNewWindow2
Kód: cancel:=false; ppDisp:=Form1.WebBrowser2.Application;
|
|
Stránka: 1 z 2
| [ Príspevkov: 31 ] | 1, 2 |
|