FilterLoad function

The FilterLoad function dynamically loads a minifilter driver into the system.

Syntax


HRESULT FilterLoad(
  _In_ LPCWSTR lpFilterName
);

Parameters

lpFilterName [in]

Pointer to a null-terminated wide-character string that specifies the service name of the minifilter driver. This parameter is required and cannot be NULL or an empty string.

Return value

FilterLoad returns S_OK if successful. Otherwise, it returns one of the following error values:

Return codeDescription
HRESULT_FROM_WIN32 (ERROR_ALREADY_EXISTS)

The minifilter driver is already running.

HRESULT_FROM_WIN32 (ERROR_FILE_NOT_FOUND)

No matching minifilter driver was found.

HRESULT_FROM_WIN32 (ERROR_SERVICE_ALREADY_RUNNING)

The minifilter driver is already running.

HRESULT_FROM_WIN32 (ERROR_BAD_EXE_FORMAT)

The load image for the minifilter driver specified by lpFilterName is invalid.

HRESULT_FROM_WIN32 (ERROR_BAD_DRIVER)

The load image for the minifilter driver specified by lpFilterName is invalid.

HRESULT_FROM_WIN32 (ERROR_INVALID_IMAGE_HASH)

The minifilter driver has an invalid digital signature.

 

Remarks

FilterLoad is the Win32 equivalent of FltLoadFilter.

A user-mode application that has a dependency on a kernel-mode minifilter driver can load the minifilter driver by calling FilterLoad.

Callers of FilterLoad must have SeLoadDriverPrivilege (the LUID of SE_LOAD_DRIVER_PRIVILEGE) to load or unload a minifilter driver. This privilege is named by the SE_LOAD_DRIVER_NAME name constant. (Privileges are described in the Microsoft Windows Software Development Kit (SDK) for Windows 7 and .NET Framework 4.0 documentation.)

To unload the minifilter driver, call FilterUnload.

Requirements

Target platform

Universal

Header

Fltuser.h (include Fltuser.h)

Library

FltLib.lib

DLL

FltLib.dll

See also

FilterUnload
FltLoadFilter
HRESULT_FROM_WIN32

 

 

Send comments about this topic to Microsoft

Show: