Condividi tramite


Funzione GetNamedPipeInfo (namedpipeapi.h)

Recupera informazioni sulla named pipe specificata.

Sintassi

BOOL GetNamedPipeInfo(
  [in]            HANDLE  hNamedPipe,
  [out, optional] LPDWORD lpFlags,
  [out, optional] LPDWORD lpOutBufferSize,
  [out, optional] LPDWORD lpInBufferSize,
  [out, optional] LPDWORD lpMaxInstances
);

Parametri

[in] hNamedPipe

Handle per l'istanza della named pipe. L'handle deve avere GENERIC_READ accesso alla named pipe per una pipe di sola lettura o di lettura/scrittura oppure deve avere GENERIC_WRITE e FILE_READ_ATTRIBUTES l'accesso per una pipe di sola scrittura.

Questo parametro può anche essere un handle per una pipe anonima, come restituito dalla funzione CreatePipe .

[out, optional] lpFlags

Puntatore a una variabile che riceve il tipo della named pipe. Questo parametro può essere NULL se queste informazioni non sono necessarie. In caso contrario, questo parametro può essere uno o più dei valori seguenti.

Valore Significato
PIPE_CLIENT_END
0x00000000
L'handle fa riferimento alla fine del client di un'istanza di named pipe. Questo è il valore predefinito.
PIPE_SERVER_END
0x00000001
L'handle fa riferimento alla fine del server di un'istanza della named pipe. Se questo valore non viene specificato, l'handle fa riferimento alla fine del client di un'istanza di named pipe.
PIPE_TYPE_BYTE
0x00000000
La named pipe è una pipe di byte. Questo è il valore predefinito.
PIPE_TYPE_MESSAGE
0x00000004
La named pipe è una pipe di messaggi. Se questo valore non viene specificato, la pipe è una pipe di byte.

[out, optional] lpOutBufferSize

Puntatore a una variabile che riceve le dimensioni del buffer per i dati in uscita, in byte. Se la dimensione del buffer è zero, il buffer viene allocato in base alle esigenze. Questo parametro può essere NULL se queste informazioni non sono necessarie.

[out, optional] lpInBufferSize

Puntatore a una variabile che riceve le dimensioni del buffer per i dati in ingresso, in byte. Se la dimensione del buffer è zero, il buffer viene allocato in base alle esigenze. Questo parametro può essere NULL se queste informazioni non sono necessarie.

[out, optional] lpMaxInstances

Puntatore a una variabile che riceve il numero massimo di istanze della pipe che è possibile creare. Se la variabile è impostata su PIPE_UNLIMITED_INSTANCES (255), il numero di istanze della pipe che è possibile creare è limitato solo dalla disponibilità delle risorse di sistema. Questo parametro può essere NULL se queste informazioni non sono necessarie.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

Windows 10 versione 1709: le pipe sono supportate solo all'interno di un contenitore di app, ad esempio da un processo UWP a un altro processo UWP che fa parte della stessa app. Inoltre, le named pipe devono usare la sintassi "\\.\pipe\LOCAL\" per il nome della pipe.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione namedpipeapi.h
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

CreateNamedPipe

GetNamedPipeHandleState

Funzioni pipe

Panoramica delle pipe