Condividi tramite


Funzione FilterConnectCommunicationPort (fltuser.h)

FilterConnectCommunicationPort apre una nuova connessione a una porta del server di comunicazione creata da un minifiltro del file system.

Sintassi

HRESULT FilterConnectCommunicationPort(
  [in]           LPCWSTR               lpPortName,
  [in]           DWORD                 dwOptions,
  [in, optional] LPCVOID               lpContext,
  [in]           WORD                  wSizeOfContext,
  [in, optional] LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  [out]          HANDLE                *hPort
);

Parametri

[in] lpPortName

Puntatore a una stringa di caratteri wide con terminazione NULL contenente il nome completo della porta del server di comunicazione, ad esempio L"\MyFilterPort".

[in] dwOptions

Opzioni di connessione per la porta di comunicazione. Prima di Windows 8.1, questo valore è impostato su 0.

Valore Significato
FLT_PORT_FLAG_SYNC_HANDLE
L'handle restituito in hPort è per le operazioni di I/O sincrone. Questo flag è disponibile a partire da Windows 8.1.

[in, optional] lpContext

Puntatore alle informazioni sul contesto fornite dal chiamante da passare alla routine di notifica di connessione del minifilter in modalità kernel. Vedere il parametro ConnectNotifyCallback nella pagina di riferimento per FltCreateCommunicationPort. Questo parametro è facoltativo e può essere NULL.

[in] wSizeOfContext

Dimensioni, in byte, della struttura a cui punta il parametro lpContext . Se il valore di lpContext non èNULL, questo parametro deve essere diverso da zero. Se lpContext è NULL, questo parametro deve essere zero.

[in, optional] lpSecurityAttributes

Puntatore a una struttura SECURITY_ATTRIBUTES che determina se l'handle restituito può essere ereditato dai processi figlio. Per altre informazioni sulla struttura SECURITY_ATTRIBUTES, vedere la documentazione di Microsoft Windows SDK. Questo parametro è facoltativo e può essere NULL. Se questo parametro è NULL, l'handle non può essere ereditato.

[out] hPort

Puntatore a una variabile allocata dal chiamante che riceve un handle per la porta di connessione appena creata se la chiamata a FilterConnectCommunicationPort ha esito positivo; in caso contrario, riceve INVALID_HANDLE_VALUE.

Valore restituito

FilterConnectCommunicationPort restituisce S_OK in caso di esito positivo. In caso contrario, restituisce un valore di errore.

Osservazioni

FilterConnectCommunicationPort apre una connessione alla porta del server di comunicazione di un minifilter per conto di un'applicazione in modalità utente. L'applicazione usa l'handle di porta di connessione risultante per comunicare con il minifiltro.

Dopo aver chiamato correttamente FilterConnectCommunicationPort, l'applicazione può inviare messaggi al minifiltro tramite la porta di connessione chiamando FilterSendMessage. Può anche ricevere e rispondere ai messaggi dal minifiltro chiamando rispettivamente FilterGetMessage e FilterReplyMessage. L'handle di porta di connessione restituito nel parametro hPort viene passato come primo parametro a FilterSendMessage, FilterGetMessagee FilterReplyMessage.

Qualsiasi handle ottenuto da FilterConnectCommunicationPort deve essere rilasciato chiamando CloseHandle.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione fltuser.h (include Fltuser.h)
libreria FltLib.lib
dll FltLib.dll

Vedere anche

CloseHandle

FilterGetMessage

FilterReplyMessage

FilterSendMessage

FltBuildDefaultSecurityDescriptor

FltCloseClientPort

FltCloseCommunicationPort

FltCreateCommunicationPort

FltFreeSecurityDescriptor

SECURITY_ATTRIBUTES