hey
i have now somewhat succesfully made an ip-tracker.
how do i make it able to "ping" an IP og host sa it will send out 4 packets or something and then count how many returns you know what i mean im sure.
and is it possible to get a "whois" thing build in to it
im using Visual Basic xpress 2005.
//Martin

ping IP/host
danych
finaly working.
but do you know how to make it close the damn console wondow that appears
and can you make it write the result in a richtextbox
i have tried changing it myself, but it wont work
//Martin
Kevin Dente
WOW!
that did the trick, i used a Rich Textbox berfore.
now another question. is it possible to show the ping progress in an progressbar
and:
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
does not work ): it still shows the black prompt window ):
//Martin
MaggieChan
Try this
My
.Computer.Network.Ping("www.google.com")Simao
landsimao.hotmail.com
GrayMatter Software
No
The process is purely a call to an external process. You cant update a progress bar from here. This will result in the window not showing.
Public Shared Function RunExecutable(ByVal ExecutableName As String, ByVal args As String) As String
Dim p As Diagnostics.Process = New Diagnostics.Process
p.StartInfo.FileName = ExecutableName
p.StartInfo.Arguments = args
p.StartInfo.UseShellExecute = False
p.StartInfo.CreateNoWindow = True
p.StartInfo.RedirectStandardOutput = True
p.Start()
Return p.StandardOutput.ReadToEnd
p.WaitForExit()
End Function
DotNetFireball
See if this helps:
http://www.gotdotnet.com/Community/MessageBoard/Thread.aspx id=374255
MuscleHead
http://msdn2.microsoft.com/en-us/library/he5sca5t.aspx
this just returns a true or false if successful - if you want more details then you would need to use one of the alternatives.
you could simply as an alternative process.start an external ping.exe and capture the output.
Prashanth Desai
Some code to capture the output from a command shell application like ping. In this case you are executing a command Ping.exe 1.1.2.3 and will get the return the output from this command as a string.
This would work if you already have command shell applications that you want to run and get the output from.
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim s As String = RunExecutable("Ping.exe", "1.1.2.3")
MsgBox(s)
End Sub
Public Shared Function RunExecutable(ByVal ExecutableName As String, ByVal args As String) As String
Dim p As Diagnostics.Process = New Diagnostics.Process
p.StartInfo.FileName = ExecutableName
p.StartInfo.Arguments = args
p.StartInfo.UseShellExecute = False
p.StartInfo.RedirectStandardOutput = True
p.Start()
Return p.StandardOutput.ReadToEnd
p.WaitForExit()
End Function
End Class
dreameR.78
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
may help to not show the window
It writes a string - so just set the text property of the textbox or whatever control you want to use.
Socal5vee
the string is very difficuilt to red, ther4e is no "next lines" sa it is just out in one, not like in the msgbox.
is it possible to fix that
Frank2808
Hope this helps (From VB101 Samples):
Private Sub DoPing_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DoPing.Click
' ping the IP address provided.
' This call blocks until the ping is successful or ' the timeout expires If Me.pingIPAddress.Text.Length > 0 Then Me.DoPing.Enabled = Me.doPingAsynch.Enabled = False Try Dim reply As PingReply = ping.Send(Me.pingIPAddress.Text) 'Show the ping resultsShowPingResultInfo(reply)
Catch ex As PingExceptionMessageBox.Show(
"The following error occured:" & Microsoft.VisualBasic.Chr(10) & "" & Microsoft.VisualBasic.Chr(13) & "" + ex.Message, "Network Sample", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try Me.DoPing.Enabled = Me.doPingAsynch.Enabled = True ElseMessageBox.Show(
"You must enter an address to ping first", "Network Sample", MessageBoxButtons.OK, MessageBoxIcon.Error) End If End Sub Private Sub ShowPingResultInfo(ByVal reply As PingReply) ' Show the details of the PingReply If reply.Status = IPStatus.Success Then Dim builder As StringBuilder = New StringBuilderbuilder.Append(
"You pinged: " & Microsoft.VisualBasic.Chr(9) & "" & Microsoft.VisualBasic.Chr(9) & "")builder.AppendLine(reply.Address.ToString)
builder.AppendLine()
builder.Append(
"The status returned was: " & Microsoft.VisualBasic.Chr(9) & "")builder.AppendLine(reply.Status.ToString)
builder.AppendLine()
builder.Append(
"The roundtrip time was: " & Microsoft.VisualBasic.Chr(9) & "")builder.AppendLine(reply.RoundtripTime.ToString(
"N"))builder.AppendLine()
If Not (reply.Buffer Is Nothing) Thenbuilder.Append(
"The reply message was: " & Microsoft.VisualBasic.Chr(9) & "")builder.AppendLine(ConvertByteBufferToString(reply.Buffer))
builder.AppendLine()
End If Dim options As PingOptions = reply.Optionsbuilder.Append(
"Ttl: " & Microsoft.VisualBasic.Chr(9) & "" & Microsoft.VisualBasic.Chr(9) & "" & Microsoft.VisualBasic.Chr(9) & "")builder.AppendLine(options.Ttl.ToString)
builder.AppendLine()
builder.Append(
"Dont Fragment: " & Microsoft.VisualBasic.Chr(9) & "" & Microsoft.VisualBasic.Chr(9) & "")builder.AppendLine(options.DontFragment.ToString)
builder.AppendLine()
MessageBox.Show(builder.ToString,
"Ping Results", MessageBoxButtons.OK, MessageBoxIcon.Information) Return End IfMessageBox.Show(
"Ping was not Successfull." & Microsoft.VisualBasic.Chr(10) & "" & Microsoft.VisualBasic.Chr(13) & "Status Code: " + reply.Status.ToString, "Ping Results", MessageBoxButtons.OK, MessageBoxIcon.Information) End SubOsiris43
it have to write the ip an domain it pinged.
the ping rate
how manu packets send, hoe many lost etc.
can you do that
Andrew Buyan
If your trying to display it in a textbox - set the textbox multiline property to true and it will display in exactly the same way as the messagebox contents.
rxg
Wow that looks unbelievably laborious....
Price Brattin
im novice in programming. sa please help me a little more.
//Martin