0
我不知道爲什麼此管道無效。一切對我來說都很好。這只是一個測試,我不寫或讀它。任何人都可以告訴我什麼是錯的?Windows命名管道無效
#include <windows.h>
#include <stdio.h>
#include <tchar.h>
#define BUFSIZE 4096
int main()
{
HANDLE hPipe;
LPTSTR Pipename = TEXT("\\\\.\\pipe\\mypipe");
printf("Start Server\n");
for(;;)
{
hPipe = CreateNamedPipe(Pipename,
PIPE_ACCESS_DUPLEX,
PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT,
PIPE_UNLIMITED_INSTANCES,
BUFSIZE,
BUFSIZE,
NMPWAIT_USE_DEFAULT_WAIT,
NULL);
if (hPipe == INVALID_HANDLE_VALUE)
{
printf("CreatePipe failed");
return 0;
}
CloseHandle(hPipe);
}
return 1;
}
使用'GetLastError()'來確定失敗原因。 – hmjd
另外,爲什麼無限循環?在失敗之前,對CreateNamedPipe的調用是否成功一次或多次? –