简体   繁体   English

带有命令提示符的命名管道

[英]Named Pipes with Command Prompt

Is it possible to pipe to a named pipe using the command prompt 是否可以使用命令提示符来管道到命名管道

dir >"\\.\pipe\my_named_pipe"

my_named_pipe being a pipe created by a win32 application my_named_pipe是Win32应用程序创建的管道

#include <windows.h>
#include <iostream>
int main()
{
HANDLE pipe= CreateNamedPipe("\\\\.\\pipe\\my_named_pipe",PIPE_ACCESS_INBOUND,PIPE_TYPE_BYTE,1,500,500,NMPWAIT_USE_DEFAULT_WAIT,NULL);

char* buf = new char[501];
ReadFile(pipe,buf,500,NULL);
std::cout << buf << std::endl;
}

I tried on windows XP 我在Windows XP上尝试过

dir >\\.\pipe\my_named_pipe

and it worked properly. 并且工作正常。

According to Wikipedia http://en.wikipedia.org/wiki/Named_pipe the answer is no for Windows and yes for Unix. 根据Wikipedia http://en.wikipedia.org/wiki/Named_pipe的说法,对于Windows,答案是“否”,对于Unix,答案是“是”。 But Windows can run Unix so it depends if you want to run Unix Services. 但是Windows可以运行Unix,所以这取决于您是否要运行Unix服务。 See for more info http://en.wikipedia.org/wiki/Windows_Services_for_UNIX 有关更多信息,请参见http://en.wikipedia.org/wiki/Windows_Services_for_UNIX

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM