سؤال

I have WCF service hosted locally that I want to use named pipes for. I have done this before on my work machine running Windows 7, but trying the same at home on Windows 8 I can't add the net.pipe binding - I simply get an "Object reference not set to an instance of an object" error when adding any non-http binding (other than https).

I have taken the following steps:

  1. Enabled the "Windows Communication Foundation Non-HTTP Activation" feature in .Net Framework 3.5, and the "Named Pipe Activation" feature under .Net Framework 4.5 Advanced Services. I have had each activated on its own, and had both activated together.
  2. Ensured that the Net.Pipe Listener Adapter service is running locally.
  3. Added the "net.pipe" protocol to the site under Advanced Settings.
  4. Restarted my machine, reset IIS, reset the site, recycled the application pool, rebooted the universe and everything in it.

Has anyone come across this before? Could it be a quirk of Windows 8?

هل كانت مفيدة؟

المحلول

I managed to get the binding working using the command line but would still be interested to find out why the IIS interface didn't accomplish the same thing. The command I used was:

C:\Windows\System32\inetsrv\appcmd.exe set site "MYSITENAME" -+bindings.[protocol='net.pipe',bindingInformation='MYSITEADDRESS']

نصائح أخرى

Actually for PS4 format was changed

appcmd set site "sitename" /bindings:"net.pipe/*"

keep in mind that this command removes the other bindings

There is a minor typo in there. It should be:

C:\Windows\System32\inetsrv\appcmd.exe set site "MYSITENAME" /+bindings.[protocol='net.pipe',bindingInformation='MYSITEADDRESS']
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top