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 に答える