GetFilterVersion
The GetFilterVersion
function is the first entry point called by the Internet Server.
BOOL WINAPI GetFilterVersion(
PHTTP_FILTER_VERSION pVer |
|
); |
|
Parameters
pVer
The
HTTP_FILTER_VERSION structure pointed to by this parameter contains both the
version information for the server and the fields for the client to indicate
version number, notifications, and priority desired. There is also a space for
the filter application to register a description of itself.
Return Values
The return
code indicates whether the filter was properly loaded. If the filter returns
FALSE, the filter application will be unloaded and will not receive any
notifications.
Remarks
The GetFilterVersion
function, implemented in the ISAPI filter application, is the first entry point
called by the Internet Server. It is important to specify only the necessary
notifications in the pVer->dwFlags member. Some notifications can
have a strong impact on performance and scalability.
In addition
to the notification flags described under the HttpFilterProc function,
there are also priority flags to specify the order in which to call the filter:
Value |
Meaning |
SF_NOTIFY_ORDER_DEFAULT |
Load
the filter at the default priority (recommended). |
SF_NOTIFY_ORDER_LOW |
Load
the filter at a low priority. |
SF_NOTIFY_ORDER_MEDIUM |
Load
the filter at a medium priority. |
SF_NOTIFY_ORDER_HIGH |
Load
the filter at a high priority. |
Note Every filter
is contained in a separate DLL with two common entry points: GetFilterVersion and HttpFilterProc . When the DLL is loaded, GetFilterVersion
is called. This lets the filter know the server version and also lets the
filter tell the server the filter version and the events that the filter is
interested in.
After this,
the server calls the filter's HttpFilterProc entry point with
appropriate notifications. Note that filters should only register for
notifications the filter needs to see some filter notifications are very expensive in terms of CPU resources
and I/O throughput, and can have a significant effect on the speed and
scalability of the Microsoft Internet Server.
BOOL
WINAPI GetFilterVersion(
HTTP_FILTER_VERSION *pVer
);
DWORD
WINAPI HttpFilterProc(
HTTP_FILTER_CONTEXT *pfc,
DWORD notificationType,
VOID *pvNotification
);
See Also