EXTENSION_CONTROL_BLOCK
A version of this page is also available for
4/8/2010
This structure is used by the Web Server and the ISAPI extension to exchange information.
Syntax
typedef struct _EXTENSION_CONTROL_BLOCK{
DWORD cbSize;
DWORD dwVersion;
HCONN ConnID;
DWORD dwHttpStatusCode;
CHAR lpszLogData[HSE_LOG_BUFFER_LEN];
LPSTR lpszMethod;
LPSTR lpszQueryString;
LPSTR lpszPathInfo;
LPSTR lpszPathTranslated;
DWORD cbTotalBytes;
DWORD cbAvailable;
LPBYTE lpbData;
LPSTR lpszContentType;
BOOL (WINAPI* GetServerVariable);
BOOL (WINAPI* WriteClient);
BOOL (WINAPI* ReadClient);
BOOL (WINAPI* ServerSupportFunction);
} EXTENSION_CONTROL_BLOCK, LPEXTENSION_CONTROL_BLOCK;
Members
- cbSize
Size of this structure.
- dwVersion
Version information of the extension specification. The HIWORD contains the major version number, and the LOWORD contains the minor version number.
- ConnID
A unique number assigned by the Web Server. This number should not be modified.
- dwHttpStatusCode
Status of the current transaction when the request is completed. The Web Server sets this variable to 200 and ignores any changes the extension might make to this variable.
- lpszLogData
Pointer to a buffer that contains a null-terminated log information string, specific to the ISAPI extension, for the current transaction. This log information will be entered into the Web Server log. Maintaining a single log file with both Web Server and ISAPI extension transactions is useful for administration purposes.
- lpszMethod
Pointer to the method with which the request was made, for example, GET or POST. This value is equivalent to the CGI variable REQUEST_METHOD.
- lpszQueryString
Pointer to a null-terminated string representing query information. This is the part of the URL string that appears after the question mark (?). This value is equivalent to the CGI variable QUERY_STRING.
- lpszPathInfo
Pointer to a null-terminated string that contains extra path information given by the client. This is the part of the string that appears between the DLL or script name in the URL and the question mark (?). The value is equivalent to the CGI variable PATH_INFO.
- lpszPathTranslated
Pointer to a null-terminated string that contains the translated path. This value is equivalent to the CGI variable PATH_TRANSLATED.
- cbTotalBytes
Total number of bytes to be received from the client.
- cbAvailable
Available number of bytes (out of a total of cbTotalBytes) in the buffer indicated by lpbData. If cbTotalBytes is the same as cbAvailable, the member lpbData will indicate a buffer that contains all the data sent by the client. Otherwise, cbTotalBytes will contain the total number of bytes of data received.
- lpbData
Pointer to a buffer of size cbAvailable that contains the data sent by the client.
- lpszContentType
Pointer to a null-terminated string containing the content type of the data sent by the client. This value is equivalent to the CGI variable CONTENT_TYPE.
- GetServerVariable
Pointer to the GetServerVariable (ISAPI Extensions) function for the extension.
- WriteClient
Pointer to the WriteClient (ISAPI Extensions) function for the extension.
- ReadClient
Pointer to the ReadClient function for the extension.
- ServerSupportFunction
Pointer to the ServerSupportFunction (ISAPI Extensions) for the extension.
Remarks
By default the web server will read in 48 KB of POST data, but this value can be modified in the registry. See Base Registry Settings (https://msdn2.microsoft.com/en-us/library/aa919492.aspx) for details.
Requirements
Header | httpext.h |
Windows Embedded CE | Windows CE 3.0 and later |
Windows Mobile | Pocket PC 2000 and later, Smartphone 2002 and later |