Run command line code programmatically using C#

前端 未结 3 1817
野趣味
野趣味 2020-12-01 13:14

I\'m using this code run in windows command prompt.. But I need this done programmatically using C# code

C:\\Windows\\Microsoft.NET\\Framework\\v4.0.3

相关标签:
3条回答
  • 2020-12-01 13:33

    You may use the Process.Start method:

    Process.Start(
        @"C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe",
        @"-pdf ""connection Strings"" ""C:\Users\XXX\Desktop\connection string\DNN"""
    );
    

    or if you want more control over the shell and be able to capture for example the standard output and error you could use the overload taking a ProcessStartInfo:

    var psi = new ProcessStartInfo(@"C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe")
    {
        Arguments = @"-pdf ""connection Strings"" ""C:\Users\XXX\Desktop\connection string\DNN""",
        UseShellExecute = false,
        CreateNoWindow = true
    };
    Process.Start(psi);
    
    0 讨论(0)
  • 2020-12-01 13:36

    You should be able to do that using a process

            var proc = new Process();
            proc.StartInfo.FileName = @"C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe ";
            proc.StartInfo.Arguments = string.Format(@"{0} ""{1}""" ""{2}""","-pdf","connection Strings" ,"C:\Users\XXX\Desktop\connection string\DNN");
            proc.StartInfo.UseShellExecute = false;
            proc.StartInfo.RedirectStandardOutput = true;
            proc.Start();
            string outPut = proc.StandardOutput.ReadToEnd();
    
            proc.WaitForExit();
            var exitCode = proc.ExitCode;
            proc.Close();
    
    0 讨论(0)
  • 2020-12-01 13:49

    try this

    ExecuteCommand("Your command here");
    

    call it using process

     public void ExecuteCommand(string Command)
        {
            ProcessStartInfo ProcessInfo;
            Process Process;
    
            ProcessInfo = new ProcessStartInfo("cmd.exe", "/K " + Command);
            ProcessInfo.CreateNoWindow = true;
            ProcessInfo.UseShellExecute = true;
    
            Process = Process.Start(ProcessInfo);
        }
    
    0 讨论(0)
提交回复
热议问题