我有兩個應用程式在NetNamedPipeBinding上與WCF協議進行通信。一個是在SYSTEM下運行的服務("S"),另一個是一個應用程式("A")。 A "創建了一個WCF服務。
當 "A "以管理員權限運行時,一切正常。但是,當在一個有限的用戶下運行時,"A "可以創建WCF服務,而 "S "則無法到達。 錯誤是:
System.ServiceModel.EndpointNotFoundException。There was no endpoint listening at net 。 pipe:/app/results,可以接受該訊息。這通常是由不正確的地址或SOAP動作引起的。詳情見InnerException,如果存在的話。---> System.IO.PipeException: 在你的本地機器上找不到管道端點'net.pipe://app/results'。
我們的想法是讓每個用戶都能訪問這個WCF服務(Everyone憑證)。 是否可以用NetNamedPipeBinding來完成?最好是在代碼中完成整個配置,而不是在組態檔中。
var binding = new NetNamedPipeBinding(NetNamedPipeSecurityMode.None)。
var baseAddress = new Uri(url);
var serviceHost = new ServiceHost(importor);
serviceHost.AddServiceEndpoint(typeof(IImplementor), binding, baseAddress) 。
serviceHost.Open()。
uj5u.com熱心網友回復:
如果代碼相同,但訪問用戶不同,這意味著非管理員用戶無法訪問該服務。
也許你可以試試下面的例子。如果還是不行,你可以向官方提交錯誤檔案。
謝謝。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/316163.html
標籤:
上一篇:WCF這可能是由于服務端點系結不使用http協議,只使用互聯網
下一篇:在第二個空格后選擇字串
