无法在Win XP机器上运行netsh命令

时间:2013-03-26 06:38:35

标签: c# visual-studio-2010 cmd windows-xp netsh

我希望以编程方式使用以下代码Reserve the portport binding

private void PortReserve()
{
  try
   {
    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.UseShellExecute = true;
    startInfo.Arguments = @"/c netsh http add urlacl url=https://127.0.0.1:8083/ user=EVERYONE";
    process.StartInfo = startInfo;
    process.Start();

    }
    catch (Exception ex)
    {
      throw ex;
    }}

对于端口绑定: 将startInfo.Arguments的参数替换为@"/c netsh http add sslcert ipport=127.0.0.1:8083 certhash=df03c4b0b32f3302a3b70abe6b5dfd864d0986a5 appid={00112233-4455-6677-8899-CCBBCCDDEEFF} clientcertnegotiation=enable";

以上命令在win 7win servers8计算机上完美运行但是当涉及Win xp它开始在CMD中抛出错误:  The following command was not found http add urlacl url=https://127.0.0.1:8083 user=Everyone

我检查了mmc中所有machine中成功导入的证书。

在这种情况下我该怎么做?

1 个答案:

答案 0 :(得分:4)

根据MSDN,您无法使用netsh进行xp。

  

如果您运行的是Windows Server 2003或Windows XP,请使用   HttpCfg.exe工具。使用Windows Server 2003安装此工具。   使用Windows XP,您可以在Windows XP Service Pack下载该工具   2支持工具。有关更多信息,请参阅Httpcfg概述。该   Windows支持工具文档解释了该语法   Httpcfg.exe工具。