0

我不知道为什么这个管道无效。对我来说一切都很好。这只是一个测试,我不写也不读。任何人都可以告诉我有什么问题吗?

#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;
}
4

1 回答 1

0

如果没有有关错误的更多详细信息,则很难提供帮助。但是,作为一般规则,使用 CreateNamedPipe 创建服务器,然后使用 ConnectNamedPipe。在客户端,您现在可以使用 ConnectNamedPipe 在服务器端等待的 CreateFile。

于 2012-10-22T09:53:00.167 回答