<Return[PQ]><Top>

PeekNamedPipe

Declare Function Api_PeekNamedPipe& Lib "kernel32" Alias "PeekNamedPipe" (ByVal hNamedPipe&, lpBuffer As Any, ByVal nBufferSize&, lpBytesRead&, lpTotalBytesAvail&, lpBytesLeftThisMessage&)

Declare Function PeekNamedPipe Lib "kernel32" (ByVal hNamedPipe As Long, lpBuffer As Any, ByVal nBufferSize As Long, lpBytesRead As Long, lpTotalBytesAvail As Long, lpBytesLeftThisMessage As Long) As Long

名前付きパイプまたは名前なしパイプのデータをバッファへコピーし、そのデータをパイプから削除しない。また、パイプ内のデータに関する情報を取得する。

パラメータ
hNamedPipe
    パイプのハンドルを指定する。このパラメータで、CreateNamedPipe 関数や CreateFile 関数が返した名前付きパイプのインスタンスハンド

    ル、または CreatePipe 関数が返した名前なしパイプのハンドルを指定する。

    このハンドルは、パイプに対する GENERIC_READ アクセスを持っていなければならない。
lpBuffer
    1 個のバッファへのポインタを指定する。関数から制御が返ると、このバッファに、パイプから読み取ったデータが格納される。

    データを読み取らない場合、NULL を指定する。
nBufferSize
    lpBuffer パラメータが指すバッファのサイズを、バイト単位で指定する。

    lpBuffer パラメータで NULL を指定した場合、このパラメータは無視される。
lpBytesRead
    1 個の変数へのポインタを指定する。関数から制御が返ると、この変数に、パイプから読み取ったバイト数が格納される。

    データを読み取らない場合、NULL を指定する。
lpTotalBytesAvail
    1 個の変数へのポインタを指定する。関数から制御が返ると、この変数に、パイプから読み取ることができる総バイト数が格納される。

    この情報が不要な場合、NULL を指定する。
lpBytesLeftThisMessage
    1 個の変数へのポインタを指定する。関数から制御が返ると、この変数に、メッセージ内の残りのバイト数が格納される。

    hNamedPipe パラメータで、バイトタイプの名前付きパイプ、または、名前なしパイプを指定した場合は、0 が格納される。

    この情報が不要な場合、NULL を指定する。


戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。