一尘不染

如何在processStartInfo中传递多个参数?

c#

我想cmdc#代码运行一些命令。我关注了一些博客和教程并获得了答案,但是我有点困惑,即我应该如何传递多个参数?

我使用以下代码:

System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;
startInfo.FileName = "cmd.exe";
startInfo.Arguments = 
...

startInfo.Arguments以下命令行代码的值是什么?

  • makecert -sk server -sky exchange -pe -n CN=localhost -ir LocalMachine -is Root -ic MyCA.cer -sr LocalMachine -ss My MyAdHocTestCert.cer

  • netsh http add sslcert ipport=127.0.0.1:8085 certhash=0000000000003ed9cd0c315bbb6dc1c08da5e6 appid={00112233-4455-6677-8899-AABBCCDDEEFF} clientcertnegotiation=enable


阅读 1621

收藏
2020-05-19

共1个答案

一尘不染

它纯粹是一个字符串:

startInfo.Arguments = "-sk server -sky exchange -pe -n CN=localhost -ir LocalMachine -is Root -ic MyCA.cer -sr LocalMachine -ss My MyAdHocTestCert.cer"

当然,当参数包含空格时,您必须使用\“ \”对其进行转义,例如:

"... -ss \"My MyAdHocTestCert.cer\""

有关此信息,请参见MSDN

2020-05-19