問題タブ [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 アプリケーションがあります。NetNamedPipe 通信によるサービスとクライアント。しかし、奇妙なことに、一部のマシンが原因である可能性があります。これは、他のソフトウェアが ChannelFactory を呼び出してサービスを呼び出し始め、例外 System.ServiceModel.ProtocolException をスローするためです。
どのアプリケーションが自分の WCF メッセージをキャッチしたかを知る方法と、この問題を回避する方法を教えてください。
ここに例外があります:
これが私のコードです」
- - - - - - - - - - - - - - サービス - - - - - - - - - - - ----------
- - - - - - - - - - - - - クライアント - - - - - - - - - - - - ----------
.net - 同じアプリケーションでホストとクライアントを使用した netNamedPipeBinding が機能しない
NetNamedPipeBinding サービスをホストする単純な Windows フォーム アプリを開発しました。同じアプリは、サービス内の関数を呼び出そうとするクライアントですが、次のエラーが発生しました。
net.pipe://service1/ に送信されたこの要求操作は、構成されたタイムアウト (00:01:00) 内に応答を受信しませんでした。この操作に割り当てられた時間は、より長いタイムアウトの一部であった可能性があります。これは、サービスがまだ操作を処理中であるか、サービスが応答メッセージを送信できなかったことが原因である可能性があります。(チャネル/プロキシを IContextChannel にキャストし、OperationTimeout プロパティを設定することによって) 操作のタイムアウトを増やすことを検討し、サービスがクライアントに接続できることを確認してください。
これは私のサービスです:
これは私の app.config です (私の Windows フォーム アプリ内):
これが私の Windows フォーム アプリです。
助けてください、私はこれで立ち往生しています!!!.
前もって。
.net - NetNamedPipeBindingバインディングを使用してWCFサービスをホストするWindowsサービスを開始できません
NetNamedPipeBindingバインディングを使用してWCFサービスをホストすることになっているWindowsサービスを作成しています。コードは次のとおりです。
はinstallutil.exe
正常にインストールできます。ただし、サービスを開始しようとすると、ローカルコンピューター上のWindowsServiceHost1が開始されてから停止したというメッセージが表示されます。一部のサービスは、他のサービスまたはプログラムで使用されていない場合、自動的に停止します。
さらに、Windowsログには次のように表示されます。
WSHttpBindingとNetTcpBindingを試しましたが、正常に動作します。
wcf - System Date 時刻を変更すると WCF チャネルに障害が発生する
カスタム バインディング (netnamedpipe トランスポート) を使用してサービスと通信するアプリケーションがあります。システム時刻を変更すると、WCF チャネルに障害が発生します。システム時刻を変更すると、内部的に ReceiveTimeout 例外がスローされ、チャネルに障害が発生します。
バインディングのクロック スキュー パラメータを設定しようとしましたが、無効な操作の例外がスローされます。
WCF には、netnamed パイプ トランスポートでこの問題を回避するための他のパラメーターがありますか?
.net - DataContractSerializer を使用して newtonsoft jobject をシリアル化すると、SerializationException が発生する
更新- ここで発生した問題はユーザー エラーでした。以下の私の答えを見てください。
「バインディングに依存しない」必要がある WCF API の DataContract に追加したいクラスがあります。つまり、BasicHttp や NamedPipe など、複数のバインディングをサポートできる必要があります。データ コントラクトに追加するクラスは、Newtonsoft.Json.Linq.JObject を使用してメンバー データを格納します。
さまざまな理由から、可能な限りこのクラスを維持したいと考えています。(テスト アプリで) DataContractSerializer を使用してこのクラスをシリアル化しようとすると、次のエラーが発生します。
これは、本質的に、私には理にかなっています。ただし、さまざまな Newtonsoft 型を KnownTypes として追加しても機能しません。これにより、「再帰的なコレクション データ コントラクト」エラーが発生します。DataContractResolver を実装しようとすると、同じ問題が発生すると思います。
Newtonsoft シリアライザーを使用して、JObject を XML にシリアライズできると思います。いくつかのオプションがあるようです:
- IDataContractSurrogate を使用して、JObject のデシリアライズされたサロゲートを提供します
- IClientMessageFormatter を使用してカスタムのシリアル化/逆シリアル化を作成する
- DataContractSerializer の代わりに、または DataContractSerializer と共に Newtonsoft シリアライザーを使用するように、デシリアライゼーションの「システム」を何らかの方法で構成/オーバーライドします。
そして、さまざまなバインディングをサポートしなければならないことが心配です。名前付きパイプはバイナリ エンコーディングを使用していましたが、それがこのシリアライゼーションの問題にどのように影響するかはわかりません。サロゲートを使用する必要があるということでしょうか?
c# - NetPipes を使用してアプリ ドメイン間で管理されていない IntPtr を渡す
.NET 4.5、ウィン 8、64 ビット
IntPtr から 4 GB のアンマネージド アレイがあります。それを読み取り、DBにプッシュしてから割り当てを解除するはずのWCF NetPipes Windowsサービスに非同期で渡したいと思います。
呼び出し元と呼び出し先が 2 つの異なる appdomain にあることは認識しているため、これは不可能な場合があります。
これは可能ですか?
もちろん、データをマネージド アレイにコピーして、そのマネージド アレイをサービスに渡すことはできますが、これはパフォーマンスの点で適切ではありません。
NB キューに IntPtr を渡す方法について質問しました2 つの AppDomains 間で管理されていないポインターを渡す (間接呼び出しによる)、この質問への回答と他の質問は、設計上の決定を下すのに役立ちます。