如题。 代码为:
pipe_ = CreateNamedPipe(L"\\.\pipe\thistest\test"),
FILE_FLAG_FIRST_PIPE_INSTANCE |
PIPE_ACCESS_DUPLEX|
FILE_FLAG_OVERLAPPED,
PIPE_TYPE_MESSAGE |
PIPE_READMODE_MESSAGE |
PIPE_WAIT,
1,
kOutBufferSize,
kInBufferSize,
0,
NULL);
DWORD re = GetLastError();
一个简单windows api调用却好老是返回错误。会是什么问题呢?
ERROR_ACCESS_DENIED
--- 没有权限,路径正确吗,或者你的程序权限够吗
创建命名管道需要什么额外权限?
另外我这是新的windows UWP上就不行,而在用windows kit 8.1的工程版本里就可以。
UWP上创建命名管道有什么不同么?
问题:创建命名管道失败,报错“open: No such file or directory”。是目录权限的问题。
分析:我写了一个fifo_r.c
创建有名管道
if((mkfifo("fifo1",666)) && (errno != EEXIST))
printf("fifo craate failed!.\n");
后来我打印了errno出来 =1
说明是目录权限的问题,后来我开了 root 也是出现这个情况,
后来在用户根目录下建的文件 就可以了,以前是在共享文件目录下的,不知道为什么这个权限不行!