Método IHttpUser::GetUserVariable
Retorna os dados de usuário personalizados por nome.
Sintaxe
virtual PVOID GetUserVariable(
IN PCSTR pszVariableName
) = 0;
Parâmetros
pszVariableName
[IN] Um ponteiro para uma cadeia de caracteres terminada em nulo constante que contém o nome da variável dos dados a serem recuperados.
Valor Retornado
Um void
ponteiro que contém os dados personalizados de upcast.
Comentários
O padrão é HTTP_USER_VARIABLE_SID
, que é definido no arquivo de cabeçalho Httpserv.h.
Notas para implementadores
Os implementadores IHttpUser são responsáveis pelo gerenciamento de memória com esses dados; portanto, IHttpUser
os implementadores que usam alocação de memória dinâmica devem liberar ou delete
o void
ponteiro quando ele não for mais necessário.
Observações para chamadores
IHttpUser
os implementadores são responsáveis pelo gerenciamento de memória com esses dados; portanto, IHttpUser
os clientes não devem liberar ou delete
o ponteiro retornado void
quando esses dados não são mais necessários. Além disso, os clientes não devem alterar o estado da memória referenciada por esse void
ponteiro, pois uma violação de acesso será gerada ou os dados se tornarão inválidos.
Exemplo
O exemplo de código a seguir demonstra como criar um módulo HTTP que limpa os cabeçalhos e o corpo da resposta e retorna informações do usuário para o cliente como um documento XML.
O código acima grava XML semelhante ao seguinte ao fluxo de resposta.
<?xml version="1.0" ?>
<user userName="DOMAIN\user" />
Seu módulo deve exportar a função RegisterModule . Você pode exportar essa função criando um arquivo de definição de módulo (.def) para seu projeto ou pode compilar o módulo usando a opção /EXPORT:RegisterModule
. Para obter mais informações, consulte Passo a passo: criando um módulo HTTP Request-Level usando código nativo.
Opcionalmente, você pode compilar o código usando a __stdcall (/Gz)
convenção de chamada em vez de declarar explicitamente a convenção de chamada para cada função.
Requisitos
Tipo | Descrição |
---|---|
Cliente | - IIS 7.0 no Windows Vista - IIS 7.5 no Windows 7 - IIS 8.0 no Windows 8 - IIS 10.0 no Windows 10 |
Servidor | - IIS 7.0 no Windows Server 2008 - IIS 7.5 no Windows Server 2008 R2 - IIS 8.0 no Windows Server 2012 - IIS 8.5 no Windows Server 2012 R2 - IIS 10.0 no Windows Server 2016 |
Produto | - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0 - IIS Express 7.5, IIS Express 8.0, IIS Express 10.0 |
parâmetro | Httpserv.h |