2012-05-14 103 views
0
class Program 
{ 
    public static void ExecuteCommand(string Command) 
    { 
     ProcessStartInfo ProcessInfo; 
     Process Process; 

     ProcessInfo = new ProcessStartInfo("cmd.exe", "/C " + Command); 
     ProcessInfo.CreateNoWindow = false; 
     ProcessInfo.UseShellExecute = false; 
     Process = Process.Start(ProcessInfo); 
     Process.WaitForExit(); 

     Process.Close(); 


    } 



    static void Main() 
    { 

     ExecuteCommand("telnet 169.254.0.1"); 


    } 
} 

它运行cmd并通过telnet连接到特定设备。接下来,一旦连接,它会提示输入我想发送的登录名和密码,然后在那几个特定的​​命令之后。我该怎么办?在cmd中发送多个TELNET命令

非常感谢!

+0

并请,使用谷歌:) – animaonline

回答

3

只需写入StandardInput流。

Process process = Process.Start("cmd"); 

if (process != null) 
{ 
    process.StandardInput.WriteLine("dir"); 
    process.StandardInput.WriteLine("ping"); 
    process.StandardInput.WriteLine("something"); 
} 
+0

也许我错过了一些概念,但是你提供的代码似乎没有一次在cmd中Telnet界面踢的工作。 – user1394252

+0

不,它明确无法使用telnet。 – T30