1 /** 2 * This file is part of the mingw-w64 runtime package. 3 * No warranty is given; refer to the file DISCLAIMER within this package. 4 */ 5 #ifndef _NAMEDPIPE_H_ 6 #define _NAMEDPIPE_H_ 7 8 #include <apiset.h> 9 #include <apisetcconv.h> 10 #include <minwindef.h> 11 #include <minwinbase.h> 12 13 #ifdef __cplusplus 14 extern "C" { 15 #endif 16 17 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) 18 WINADVAPI WINBOOL WINAPI ImpersonateNamedPipeClient (HANDLE hNamedPipe); 19 WINBASEAPI WINBOOL WINAPI CreatePipe (PHANDLE hReadPipe, PHANDLE hWritePipe, LPSECURITY_ATTRIBUTES lpPipeAttributes, DWORD nSize); 20 WINBASEAPI WINBOOL WINAPI ConnectNamedPipe (HANDLE hNamedPipe, LPOVERLAPPED lpOverlapped); 21 WINBASEAPI WINBOOL WINAPI DisconnectNamedPipe (HANDLE hNamedPipe); 22 WINBASEAPI WINBOOL WINAPI SetNamedPipeHandleState (HANDLE hNamedPipe, LPDWORD lpMode, LPDWORD lpMaxCollectionCount, LPDWORD lpCollectDataTimeout); 23 WINBASEAPI WINBOOL WINAPI PeekNamedPipe (HANDLE hNamedPipe, LPVOID lpBuffer, DWORD nBufferSize, LPDWORD lpBytesRead, LPDWORD lpTotalBytesAvail, LPDWORD lpBytesLeftThisMessage); 24 WINBASEAPI WINBOOL WINAPI TransactNamedPipe (HANDLE hNamedPipe, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesRead, LPOVERLAPPED lpOverlapped); 25 WINBASEAPI HANDLE WINAPI CreateNamedPipeW (LPCWSTR lpName, DWORD dwOpenMode, DWORD dwPipeMode, DWORD nMaxInstances, DWORD nOutBufferSize, DWORD nInBufferSize, DWORD nDefaultTimeOut, LPSECURITY_ATTRIBUTES lpSecurityAttributes); 26 WINBASEAPI WINBOOL WINAPI WaitNamedPipeW (LPCWSTR lpNamedPipeName, DWORD nTimeOut); 27 #if _WIN32_WINNT >= 0x0600 28 WINBASEAPI WINBOOL WINAPI GetNamedPipeClientComputerNameW (HANDLE Pipe, LPWSTR ClientComputerName, ULONG ClientComputerNameLength); 29 #endif 30 31 #ifdef UNICODE 32 #define CreateNamedPipe CreateNamedPipeW 33 #define WaitNamedPipe WaitNamedPipeW 34 #define GetNamedPipeClientComputerName GetNamedPipeClientComputerNameW 35 #endif 36 #endif 37 38 #ifdef __cplusplus 39 } 40 #endif 41 #endif 42