| title | IHttpContext::SetServerVariable Method |
|---|---|
| description | Describes the IHttpContext::SetServerVariable method and details its syntax, parameters, return value, remarks, code example, and requirements. |
| ms.date | 10/07/2016 |
| ms.assetid | 1099f28d-b795-fd21-3832-53f2531169a4 |
Sets a server variable to a specified value.
virtual HRESULT SetServerVariable(
PCSTR pszVariableName,
PCWSTR pszVariableValue
) = 0; pszVariableName
[IN] A pointer to a string that contains the name of the server variable to set.
pszVariableValue
[IN] A pointer to a string that contains the value of the server variable to set.
An HRESULT. Possible values include, but are not limited to, those in the following table.
| Value | Description |
|---|---|
| S_OK | Indicates that the operation was successful. |
| ERROR_NOT_ENOUGH_MEMORY | Indicates that there is insufficient memory to perform the operation. |
The SetServerVariable method specifies the values for Common Gateway Interface (CGI) server variables. The server variable specified by the pszVariableName parameter can be a custom variable or a variable defined in Request for Comments (RFC) 3875, "The Common Gateway Interface (CGI) Version 1.1."
Note
The server variable specified by the pszVariableName parameter is created if it does not exist.
The following code example demonstrates how to use the SetServerVariable method to create an HTTP module that sets the value of the SERVER_NAME server variable to an example value.
[!code-cppIHttpContextSetServerVariable#1]
Your module must export the RegisterModule function. You can export this function by creating a module definition (.def) file for your project, or you can compile the module by using the /EXPORT:RegisterModule switch. For more information, see Walkthrough: Creating a Request-Level HTTP Module By Using Native Code.
You can compile the code by using the __stdcall (/Gz) calling convention instead of explicitly declaring the calling convention for each function.
| Type | Description |
|---|---|
| Client | - IIS 7.0 on [!INCLUDEwinvista] - IIS 7.5 on Windows 7 - IIS 8.0 on Windows 8 - IIS 10.0 on Windows 10 |
| Server | - IIS 7.0 on [!INCLUDEwinsrv2008] - IIS 7.5 on Windows Server 2008 R2 - IIS 8.0 on Windows Server 2012 - IIS 8.5 on Windows Server 2012 R2 - IIS 10.0 on Windows Server 2016 |
| Product | - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0 - [!INCLUDEiisexp75], [!INCLUDEiisexp80], [!INCLUDEiisexp100] |
| Header | Httpserv.h |
IHttpContext Interface
IHttpContext::GetServerVariable Method