Condividi tramite


Funzione FwpmEngineOpen0 (fwpmu.h)

La funzione FwpmEngineOpen0 apre una sessione al motore di filtro.

Sintassi

DWORD FwpmEngineOpen0(
  [in, optional] const wchar_t             *serverName,
  [in]           UINT32                    authnService,
  [in, optional] SEC_WINNT_AUTH_IDENTITY_W *authIdentity,
  [in, optional] const FWPM_SESSION0       *session,
  [out]          HANDLE                    *engineHandle
);

Parametri

[in, optional] serverName

Tipo: const wchar_t*

Questo valore deve essere NULL.

[in] authnService

Tipo: UINT32

Specifica il servizio di autenticazione da usare. I servizi consentiti sono RPC_C_AUTHN_WINNT e RPC_C_AUTHN_DEFAULT.

[in, optional] authIdentity

Tipo: SEC_WINNT_AUTH_IDENTITY_A*

Credenziali di autenticazione e autorizzazione per l'accesso al motore di filtro. Questo puntatore è facoltativo e può essere NULL. Se questo puntatore è NULL, vengono usate le credenziali del thread chiamante.

[in, optional] session

Tipo: FWPM_SESSION0*

Parametri specifici della sessione per l'apertura della sessione. Questo puntatore è facoltativo e può essere NULL.

[out] engineHandle

Tipo: HANDLE*

Handle per la sessione aperta al motore di filtro.

Valore restituito

Tipo: DWORD

Codice/valore restituito Descrizione
ERROR_SUCCESS
0
La sessione è stata avviata correttamente.
FWP_E_ALREADY_EXISTS
0x80320009
È già aperta una sessione con sessionKey specificata.
FWP_E_* codice di errore
0x80320001: 0x80320039
Errore specifico di Windows Filtering Platform (WFP). Per informazioni dettagliate, vedere Codici di errore WFP .
RPC_* codice di errore
0x80010001: 0x80010122
Non è possibile comunicare con il motore firewall remoto o locale.

Commenti

Un'applicazione utente deve chiamare FwpmEngineOpen0 per ottenere un handle per la sessione aperta al motore di filtro prima di aggiungere o rimuovere eventuali oggetti filtro. Per la maggior parte delle altre funzioni di gestione della piattaforma di filtro è necessario anche un handle per una sessione aperta al motore di filtro.

La sessione viene chiusa automaticamente al termine del programma. Per chiudere in modo esplicito una sessione, chiamare FwpmEngineClose0.

Se sessione. i flag vengono impostati su FWPM_SESSION_FLAG_DYNAMIC, tutti gli oggetti WFP aggiunti durante la sessione vengono eliminati automaticamente al termine della sessione. Se la sessione non è dinamica, il chiamante deve eliminare in modo esplicito tutti gli oggetti WFP aggiunti durante la sessione.

Il chiamante deve FWPM_ACTRL_OPEN l'accesso al motore di filtro. Per altre informazioni, vedere Controllo di accesso.

FwpmEngineOpen0 è destinato all'uso solo in modalità non rappresentata.

FwpmEngineOpen0 è un'implementazione specifica di FwpmEngineOpen. Per altre informazioni , vedere Nomi Version-Independent WFP e Versioni specifiche di Windows .

Esempio

L'esempio C++ seguente usa FwpmEngineOpen0 per aprire una sessione di filtro.

// Open a session to the filter engine
        
HANDLE    engineHandle = NULL;
DWORD    result = ERROR_SUCCESS; 

printf("Opening the filter engine.\n");
        
result = FwpmEngineOpen0(
    NULL, 
    RPC_C_AUTHN_WINNT, 
    NULL,
    NULL, 
    &engineHandle );

if (result != ERROR_SUCCESS)
    printf("FwpmEngineOpen0 failed. Return value: %d.\n", result); 
else
    printf("Filter engine opened successfully.\n");

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione fwpmu.h
Libreria Fwpuclnt.lib
DLL Fwpuclnt.dll

Vedi anche

Costanti del servizio di autenticazione

FWPM_SESSION0

FwpmEngineClose0

FwpmEngineOpen0 in modalità kernel

SEC_WINNT_AUTH_IDENTITY_A