čakanie v cykle na dokončenie handleru – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

čakanie v cykle na dokončenie handleru – .NET – Fórum – Programujte.comčakanie v cykle na dokončenie handleru – .NET – Fórum – Programujte.com

 

yterbium0
Stálý člen
12. 11. 2009   #1
-
0
-

zdravím,

rozšírujem si aplikáciu jendu aplikáciu, ktorá získava zdrojový kod stránky cez controlu WebBrowser. Prvú stránku označme ako "povodnaStranka.com", dalšia stránka je "povodnaStrana.com?error1", dalšia "povodnaStrana.com?error2" atd.

to že koľko je tých errorov je mám uložené v "pocetStran", to som si zistil automaticky pri starte...

potom mám metodu PresmerovanieVypomoc(), ktora to má všetko obslúžiť (spúšta sa napr. pri kliku tlačitka)

private void PresmerovanieVypomoc()

{
for (int i = 0; i < pocetStran; i++)
{
novaAdresa = prihlasenieAdresa + "?error=" + i;
webBrowser1.Navigate(novaAdresa);
webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(Skopci);
POCKAT KYM SA DOCUMENTCOMPLETED NEVYKONA A NEDOKONCI

}
}

void Skopci(object sender, WebBrowserDocumentCompletedEventArgs e)
{
webBrowser1.DocumentCompleted -= Skopci;
zdrojak += webBrowser1.DocumentText;
}


no problém je v tom, že neviem čo dať za tento riadok: "POCKAT KYM SA DOCUMENTCOMPLETED NEVYKONA A NEDOKONCI ",

pretože pokial tam nič nedám, tak cyklus mi prejde skôr ako mi presmeruje na tú stránku, lebo rýchlosť netu sa zdaleka nevyrovná Core2Duou .

Viete mi poradiťako to zapísať, malo by to byť niečo ako toto:
"continue only if Skopci is done"

Vopred díky

Nahlásit jako SPAM
IP: 158.195.164.–
mephi0
Expert
15. 11. 2009   #2
-
0
-

Ahoj. Tak probem asi je, že to pracuje asynchronne, čo vlastne nechceš.
WebBrowser zobrazuje tu stránku, ale v prípade, že ju nepotrebuješ zobrazovať,
ale iba poslať request a získať response, použi triedu WebClient.

Nahlásit jako SPAM
IP: 147.32.90.–
Program nemusi fungovat rychle, staci ze funguje dostatecne rychle.
dannyk0
Věrný člen
15. 11. 2009   #3
-
0
-

Nebo pouzit nejake nastroje na vlaknovou synchronizaci (treba Monitor), ale s tim by mohly byt v tvem pripade nejake problemy si myslim.

Nahlásit jako SPAM
IP: 85.135.97.–
Jedu v c++,c#,assembler,ASP.NET,PHP,databaze,bezpecnost softwaru[br] -----------------------------------------------------------[br] Muj blog o programovani,hudbe a vsem moznem,co najdu na netu :) [br] http://dannyk.aspone.cz[br] -----------------------------------------------------------[br] Na foru mam nejake prispevky pod nickem Master,tak jen pro upresneni :)
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 28 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý