我希望以编程方式使用以下代码Reserve the port
和port 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 7
,win servers
和8
计算机上完美运行但是当涉及Win xp
它开始在CMD
中抛出错误:
The following command was not found http add urlacl url=https://127.0.0.1:8083 user=Everyone
我检查了mmc
中所有machine
中成功导入的证书。
在这种情况下我该怎么做?
答案 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工具。