Как снизить целостность именованного канала WCF

У меня есть надстройка Internet Explorer, написан на C #, который общается через именованный канал WCF с настольным приложением .NET. Настольное приложение создает ServiceHost для netNamedPipeBinding, а каждый экземпляр надстройки IE создает ChannelFactory для взаимодействия с приложением. В Windows XP все работает нормально, но в защищенном режиме IE в Windows 7 возникает исключение.

System.ServiceModel.CommunicationException: не удается подключиться к конечной точке net.pipe: //localhost/MyApp.MyID. ---> System.IO.PipeException: конечная точка канала существует для '\. \ Pipe ... guid ...', но соединение не удалось: доступ запрещен. (5, 0x5)

Запуск надстройки в защищенном режиме - это сценарий, который я должен поддерживать. Насколько я понимаю, если я снизлю уровень целостности именованного канала, моя надстройка IE сможет разговаривать через него. У меня вопрос, как это сделать. У меня есть настройки для использования WCF, и я бы предпочел оставить это так. Могу ли я заставить WCF создать именованный канал с более низким уровнем целостности? Какой код мне нужно написать, чтобы это произошло?

5
задан HappyNomad 31 October 2010 в 19:07
поделиться