windowsでのパイプでのやり取りに詳しい人助けてくれませんか
あとで一部ソースコードは載せます
パイプ処理を非同期で行いたい
1. CreateNamedPipeで名前つきパイプを作成
2. CreateEventでオーパーラップ構造体にシグナル用のイベントをひもづける
3. 「非同期」でConnectNamedPipeを行う
4. WaitForSingleObjectでタイムアウトか接続が来たらパイプのコネクトをする
この流れで処理を作ろうとしてる
ただ、非同期な設定にすると上手く繋げず困ってます
そもそも名前つきパイプで非同期処理はできない..??
msdnにはCreateNamedPipeの第3引数にPIPE_WAITかPIPE_NOWAITかあるが、
PIPE_NOWAITは使用しないでくださいとあるのでPIPE_WAITを指定すると同期処理で待機することはできました
ただし、接続が来なかったらタイムアウトみたいなことができないので、ためしにPIPE_NOWAITにするとGetLastErrorによると218のエラーを返してくる
オーパーラップ構造体を指定したらConnectNamedPipeは非同期云々掛かれてるけどもできないのかな..?
C++相談室 part137
■ このスレッドは過去ログ倉庫に格納されています
213デフォルトの名無しさん (スップ Sd03-snBd)
2018/09/04(火) 22:20:34.19ID:gG5zqknwd■ このスレッドは過去ログ倉庫に格納されています
