0

1 つのプロセスにパイプ (サーバー) があり、ConnectNamedPipe.
サーバーがリッスンを開始するのを待っているクライアントプロセスでWaitNamedPipe、5000ミリ秒のタイムアウトを指定しました。
クライアントをテストしてみましたが、サーバーが実行されていなくても、WaitNamedPipeまったく待機しませんでした。

これらのメソッドを使用しようとしているだけなので、ここでコードが役立つかどうかはわかりません。しかし、何かを見たい場合は、関連するものを教えてください. :)

ああ、奇妙な部分は、エラー コード 2:「ファイルが見つかりません」が表示されたことです。
パイプが開かれるまで待つべきではないでしょうか (パイプは「ファイル」ですよね?)

WaitNamedPipe待てない原因は?

4

1 に答える 1

2

パイプが存在するのを待つのではなく、既存のパイプが利用可能になるのを待ちます (つまり、未処理のConnectNamedPipe):

指定された名前付きパイプのインスタンスが存在しない場合、WaitNamedPipe 関数はタイムアウト値に関係なくすぐに戻ります。

于 2012-11-08T14:06:36.157 に答える