2014-01-08 85 views
0

我有textbox1.text,它有用户输入文本。使命令行参数

有主要的命令等等。其中之一是IP 如果用户键入ip local我希望它显示本地IP,我已经有

代码另一个例子是ping google.com 1000这将ping命令谷歌为1000MS,再次我已经为代码它,但我怎么会得到1000或如果它不在那里?它只会ping一次。我不想要一个错误弹出。

代码:

Dim text As String = TextBox1.Text 
server.Start() 
If text.StartsWith("ip") And text.EndsWith(" local") Then 
    response = System.Net.Dns.GetHostByName(System.Net.Dns.GetHostName()).AddressList(0).ToString() 
end if 
+0

'System.Environment.GetCommandLineArgs()As String()'将命令行解析为一个字符串数组......现在你在使用什么? – Plutonix

+0

向我们展示一些代码。你尝试了什么? –

+0

你是什么意思现在使用? – user3174948

回答

0

我相信你想这样的事情,而不是:

Dim array() As String = TextBox1.Text.Split(" ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries) 
Dim cmd as String = array(0).ToUpper() 

If cmd = "IP" Then 
    IpConfig array 
Else If cmd = "PING" Then 
    Ping array 
End If 

下一页添加的每个命令作为一个Sub或Function或任何....

Public Sub IpConfig(byVal array() as String) 
    ' your code 

End Sub 

More commands..... 
+0

这很好用,但如果用户键入IP本地我将如何能够获得本地,或者如果他们键入IP本地2000我怎么能得到2000 – user3174948

+0

所有这些值将在阵列中。例如,在IPConfig子文件中,您应该获得数组的计数。如果计数是2,那么它们必须提供“主机端口”,所以array(1)是主机,而array(2)是端口。每个小组必须得到一个计数并独立处理每个操作。 –

+0

请upvote如果这有助于/解决您的问题 –