请问:如何用命名管道实现CreatePipe类似功能?

ATmega32 2008-07-01 02:14:25
CreatePipe(&hStdOutRead, &hStdOutWrite, &sa, 0);
如果用命名管道,怎么实现类似的功能?

还是比较迷惑,命名管道和匿名管道用法大不相同。
CreatePipe(&hStdOutRead, &hStdOutWrite, &sa, 0);
直接得到管道的读写句柄.

而CreateNamedPipe只返回一个句柄,如何读写呢?
要得到读写句柄,要调用两次CreateNamedPipe函数??

hStdOutWrite= CreateNamedPipe(……);
hStdOutRead=CreateNamedPipe(……);

还是一头雾水。

怎么建立一个管道,管道读用hStdOutRead,管道写用hStdOutWrite,单向传输,且读写不阻塞线程,如何用命名管道实现?

...全文
1176 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Waiting4you 2008-07-02
  • 打赏
  • 举报
回复
咳咳,不对,偶差点误导楼主,两个命名管道和匿名管道产生的一对管道不一样,匿名管道的那一对是相通的。~!@#$%
如果可能,应该只需要一个命名管道就可以同时负责输入/输出了。
我来看看CB 2008-07-02
  • 打赏
  • 举报
回复
学习
Waiting4you 2008-07-02
  • 打赏
  • 举报
回复
根据CreateNamedPipe第二个参数决定,可以是只读,只写,可读可写。
如果要象匿名管道那样,那确实只能使用两个命名管道了。

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧