HttpExtensionProc (Compact 2013)
3/26/2014
This function is an application-defined function. It is the main entry point for an ISAPI extension called by the Web Server. The Web Server calls this function to give the ISAPI extensions DLL control of the processing. ISAPI extensions export this function to expose methods that the Web Server uses to access the functionality exposed by the extension. The HttpExtensionProc name for this function is a placeholder for the function name defined by the header.
Syntax
DWORD WINAPI HttpExtensionProc(
EXTENSION_CONTROL_BLOCK* pECB
);
Parameters
- pECB
[in] Pointer to an EXTENSION_CONTROL_BLOCK structure that is associated with the current, active request.
Return Value
Returns a DWORD status code. The following table shows the possible return values.
Value |
Description |
---|---|
HSE_STATUS_SUCCESS |
The extension has finished processing and the server should disconnect the client and free up allocated resources. |
HSE_STATUS_SUCCESS_AND_KEEP_CONN |
The extension has finished processing and the server should wait for the next HTTP request if the client supports Keep-Alive connections. The extension can return this only if it was able to send the correct Content-Length header to the client. |
HSE_STATUS_PENDING |
This option is not supported in the Web Server. |
HSE_STATUS_ERROR |
The extension has encountered an error while processing the request, so the server can disconnect the client and free up allocated resources. An HTTP status code of 500 is written to the Web Server log for the request. |
Remarks
This entry point function is similar to a main function in a C/C++ program. The code in this function uses callback functions in the EXTENSION_CONTROL_BLOCK to read client data and decide which action to take. Before returning to the server, a properly formatted response must be sent to the client through either WriteClient (ISAPI Extensions) or ServerSupportFunction (ISAPI Extensions). Return codes are defined in Httpext.h.
Important
The Web Server performs a keep-alive operation if ISAPI extension returns HSE_STATUS_SUCCESS_AND_KEEP_CONN.
Requirements
Header |
httpext.h |
Library |
Developer Implemented |
See Also
Reference
Web Server Functions
EXTENSION_CONTROL_BLOCK
WriteClient (ISAPI Extensions)
ServerSupportFunction (ISAPI Extensions)