问题标签 [netnamedpipebinding]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wcf - 非管理员用户的客户端无法使用 net.pipe 与服务进行通信
我有一个使用 net.pipe 协议托管 WCF 服务的客户端应用程序。客户端无法与在管理员用户下运行的其他 WCF 服务进行通信。
我已经读到您无法在不同用户之间使用 net.pipe 进行通信。
有办法绕过吗?
.net - 如何在 iis 中托管启用了网络命名管道绑定的 wcf 应用程序?
我的 wcf 服务中有以下配置
谁能建议我如何使用 netNamedPipe 绑定在 iis 中托管这个 wcf 服务?
wcf - WCF-NetNamedPipe 的 ChannelFactory
更新 20121214 咨询冲突服务的开发者,他们使用net.pipe://echonet作为服务地址,并使用DuplexChannelFactory。为什么它会阻塞我的管道?
问题:
我有一个非常简单的 WCF 应用程序。Service 和 Client 通过 NetNamedPipe 通信。但奇怪的是,有些机器可能是因为其他软件的原因,导致ChannelFactory开始调用Service,抛出异常:System.ServiceModel.ProtocolException。
我怎么知道哪个应用程序捕获了我的 WCF 消息,以及我应该如何避免这个问题。
这是例外:
这是我的代码'
- - - - - - - - - - - - - - 服务 - - - - - - - - - - - ---------
- - - - - - - - - - - - - 客户 - - - - - - - - - - - - ----------
.net - netNamedPipeBinding 与同一应用程序中的主机和客户端不工作
我开发了一个简单的 Windows 窗体应用程序,在其中托管 NetNamedPipeBinding 服务,并且同一应用程序是尝试调用服务中的函数的客户端,但我收到此错误:
发送到 net.pipe://service1/ 的此请求操作在配置的超时 (00:01:00) 内未收到回复。分配给此操作的时间可能是较长超时的一部分。这可能是因为服务仍在处理操作,或者因为服务无法发送回复消息。请考虑增加操作超时(通过将通道/代理转换为 IContextChannel 并设置 OperationTimeout 属性)并确保服务能够连接到客户端。
这是我的服务:
这是我的 app.config(在我的 Windows 窗体应用程序中):
这是我的 Windows 窗体应用程序:
请帮忙,我被这个困住了!!!
提前说。
.net - 无法启动托管具有 NetNamedPipeBinding 绑定的 WCF 服务的 Windows 服务
我正在创建一个 Windows 服务,它应该使用NetNamedPipeBinding绑定来托管 WCF 服务。以下是代码:
installutil.exe
能够成功安装它。但是,当我尝试启动该服务时,我收到一条消息本地计算机上的 WindowsServiceHost1 已启动然后停止。如果某些服务没有被其他服务或程序使用,它们会自动停止。
此外,Windows 日志显示为:
我已经尝试过WSHttpBinding和NetTcpBinding并且它们工作正常。
wcf - 更改系统日期时间会使 WCF 通道出现故障
我有一个使用自定义绑定(netnamedpipe 传输)与服务通信的应用程序。当我更改系统时间时,它会使 WCF 通道出现故障。当我们更改系统时间导致通道出现故障时,它会在内部引发 ReceiveTimeout 异常。
我试图设置绑定的时钟偏差参数,但它抛出了无效的操作异常。
WCF 是否有任何其他参数来避免网络命名管道传输的这个问题?
.net - 使用 DataContractSerializer 序列化 newtonsoft 作业的 SerializationException
更新- 我在这里遇到的问题是用户错误。请看下面我的回答。
我有一个要添加到 WCF API 的 DataContract 的类,它应该是“绑定不可知的”;即,它应该能够支持多种绑定,包括BasicHttp 和NamedPipe。我要添加到数据协定的类使用 Newtonsoft.Json.Linq.JObject 来存储成员数据:
出于各种原因,如果可能的话,我想保持这个课程不变。当我尝试使用 DataContractSerializer (在测试应用程序中)序列化此类时,出现以下错误:
从本质上讲,这对我来说很有意义。但是,将各种 Newtonsoft 类型添加为 KnownTypes 不起作用——这会导致“递归收集数据契约”错误。如果我尝试实现 DataContractResolver,我想我会遇到同样的问题。
我相信我可以使用 Newtonsoft 序列化程序将 JObject 序列化为 XML。看来我有几个选择:
- 使用 IDataContractSurrogate 并提供 JObject 的反序列化代理
- 使用 IClientMessageFormatter 创建自定义序列化/反序列化
- 以其他方式配置/覆盖反序列化“系统”以使用 Newtonsoft 序列化程序代替 DataContractSerializer 或与 DataContractSerializer 一起使用。
而且,我担心必须支持各种绑定。命名管道使用二进制编码,我不确定这会如何影响这个序列化问题——也许这意味着我必须使用代理?
c# - Passing an unmanaged IntPtr across app domains with NetPipes
.NET 4.5, Win 8, 64bit
I have an IntPtr to 4 GB unmanaged array. I want to pass it async to a WCF NetPipes Windows Service, which is supposed to read it, push it to DB then deallocate it.
I am aware that the caller and the callee are on two different appdomains, so this might not be possible.
Is this possible and how?
Ofcourse, I can copy the data to a managed array then pass the managed array to the service, but this is not good performance-wise.
N.B. I asked a question of how to pass an IntPtr on a queue Passing an unmanaged pointer between two AppDomains (By indirect call) , the answer to this question and the other question will help me taking a design decision.
wcf - 如何以编程方式为 wcf 命名管道设置 ChannelInitializationTimeout
我有一个命名管道 wcf 服务,我需要以编程方式为其设置 ChannelInitializationTimeout 属性。我目前没有使用任何配置文件。这是我当前的客户端代码:
以下是我的服务器代码:
该服务运行正常,但我试图弄清楚如何以编程方式更改 ChannelInitializationTimeout 属性,作为我试图解决的另一个问题的一部分。
关于如何在代码中严格执行此操作的任何想法?提前致谢。
c# - 将 mex 端点添加到 NetNamedPipeBinding
我正在尝试通过 NetNamedPipeBinding 公开一个接口。
这就是我所做的:
服务启动正常,但是当我创建一个新的 Visual Studio 项目并尝试在 location 添加服务引用时net.pipe://localhost/myservice/
,出现以下错误:
如果我用 NetNamedPipeBinding 代替 TcpBinding,代码可以正常工作,并且可以添加服务引用。
我应该更改什么,以便可以在 Visual Studio 中添加服务引用?