我应该在 netsh.exe 中使用什么“ appid”?

Netsh命令需要一个 appid (看这里) :

netsh http add sslcert ipport=0.0.0.0:8000 certhash=0000000000003ed9cd0c315bbb6dc1c08da5e6 appid={00112233-4455-6677-8899-AABBCCDDEEFF}

我怎么知道 GUID netsh 要我提供什么?

59891 次浏览

You can use any valid GUID. It is only used to allow you to identify the binding later.

I used the Application GUID for my WCF service that is located within the AsseblyInfo.vb (VB.NET) or AssemblyInfo.cs (C#) file of my hosting application (Windows Service) as shown below:

<Assembly: Guid("8fbacae2-bd4e-8ef5-b202-1561845dd04f")>

I used this as the appid parameter for the netsh.exe tool like so:

appid={8fbacae2-bd4e-8ef5-b202-1561845dd04f}

It worked perfectly and my WCF service uses HTTPS via that SSL certificate.

If you bind a certificate using the IIS GUI (inetmgr.exe), then perform 'netsh http show sslcert'. You'll see the AppID of {4dc3e181-e14b-4a21-b022-59fc669b0914}, which is the AppID IIS uses, so it's the appid I use, too.

"It always says Invalid Argument …"

Try appid="{7E46BD40-39C6-4813-B414-019AD1122333}"

with quotes.

See also "The parameter is incorrect" error using "netsh http add sslcert".