[ Spid3RmaN @ 11.03.2009. 09:01 ] @
Napravio sam mali program u c# i zanima me kako da ga nateram da sačeka da se nešto završi pa da tek onda krene dalje? Probao sam sa tajmerima i sleep(), ali mi nije baš išlo. Evo konkretan primer(deo koda): Code: private void startButton_Click(object sender, EventArgs e) { if (startButton.Text == "START SURFING") { startSurfing(); } else { stopSurfing(); } statusBox.SelectedIndex = statusBox.Items.Count - 1; } void startSurfing() { startButton.Text = "STOP SURFING"; while (startButton.Text == "STOP SURFING") { string tURL = targetURL.Text; statusBox.Items.Add("Preparing to start surfing..."); targetURL.Enabled = false; execField.Enabled = false; execButton.Enabled = false; statusBox.Items.Add("Starting an executable..."); System.Diagnostics.Process.Start(execField.Text); // Ovde treba da čeka jedno 10 sekundi ali ne znam kako to da napravim... statusBox.Items.Add("Visiting the provided link..."); miniBrowser.Navigate(tURL); // I ovde treba da sačeka jedno 10 sekundi... } } void stopSurfing() { startButton.Text = "START SURFING"; statusBox.Items.Add("Surfing session has bin stopped."); targetURL.Enabled = true; execField.Enabled = true; execButton.Enabled = true; } Ovo je u stvari neki mini auto surfer koji pokušavam da napravim. On sve radi samo što neće da sačeka da se završi beč(batch) fajl koji se pokreće, pa da sačeka da se poseti strana, pa tako u krug, već mi on pokrene milion tih bečeva(što i treba, ali ne tom brzinom) jedan za drugim i moram da resetujem kompjuter... I čini mi se da u javi ima waitFor() za ovakve stvari, da li tako nešto ima i u c#? EDIT: Evo našao sam da što se tiče procesa(pokretanja onog fajla), mogu da sačekam da se on završi tako što na kraju dodam .WaitForExit, tako da mi radi toga nije više potrebna pomoć. A što se tiče čekanja da se stranica učita iskoristio sam tajmer(naučio sam da koristim :P). Brišite temu slobodno... [Ovu poruku je menjao Spid3RmaN dana 11.03.2009. u 16:41 GMT+1] |