[ xxxrugby @ 01.05.2007. 22:43 ] @
Jel ste nasli koj Kod od Ping funkcije koj dok se pokrene daje Replay kao u cmd-u i ne zblesavi se kada nema replay-a.

Ono da radi kao u cmd-u. ping hostname i sad on to odvrti sve tako lijepo.

S MS-a kod se zblesavi. Napravis Ping hostname i ako nema odziva ode sve u bananu. Sve se zbrejka. Cijeli programcic.

Evo s MSDN-a
http://msdn2.microsoft.com/en-...rkinformation.pingoptions.aspx
[ xxxrugby @ 02.05.2007. 14:31 ] @
Evo ova funkcija radi dobro. Nadjeno i malo editirano iz OReailly knjige

Code:
        public void Ping_Function(string hostname)
        {
            System.Net.NetworkInformation.Ping pinger = new System.Net.NetworkInformation.Ping();
            PingReply reply = pinger.Send(hostname);
            DisplayPingReplyInfo(reply);
            
            pinger.PingCompleted += new PingCompletedEventHandler(pinger_PingCompleted);
            pinger.SendAsync(hostname, "oreilly ping");
        }
        
        private void DisplayPingReplyInfo(PingReply reply)
        {
            if (reply.Status == IPStatus.Success)
            {
                string result = "Results from pinging " + reply.Address
                                + "\tFragmentation allowed?: " + !reply.Options.DontFragment
                                + "\tTime to live: " + reply.Options.Ttl
                                + "\tRoundtrip took: " + reply.RoundtripTime
                                + "\tStatus: " + reply.Status.ToString();
                 this.RichTextBoxPing.Text = result;
            }
            else
            {
                string result = reply.Status.ToString ();
                this.RichTextBoxPing.Text = result;
            }
        }
        private void pinger_PingCompleted(object sender, PingCompletedEventArgs e)
        {
            PingReply reply = e.Reply;
            DisplayPingReplyInfo(reply);
            
            string result;

            if(e.Cancelled)
            {
                result = "Ping for " + e.UserState.ToString() + " was cancelled";
                this.RichTextBoxPing.Text = result;
            }
            else if (e.Error != null)
            {
                result = "Exception thrown during ping: " + e.Error.ToString();
                this.RichTextBoxPing.Text = result;
            }
        }
[ markom @ 02.05.2007. 14:41 ] @
Pri svakom radu sa mrežama, jako je bitno imati na umu da ne radi sve uvek kako treba. Možda sam ja slep, ali ja ovde nigde ne vidim nikakav timeout. Koliko dugo će funkcije da čekaju na odgovor?
[ Shadowed @ 02.05.2007. 15:07 ] @
Mislim da postoji neki default.
Takodje, mislim da je resenje blokiranja aplikacije u slucaju timeout-a moguce izbeci ako se funkcija pokrece u zasebnom thread-u.
[ xxxrugby @ 02.05.2007. 15:36 ] @
Default je 1000 ms.

Znaci cekam 1 sekundu ako nema odgovora.!