Função SCardEstablishContext (winscard.h)
A função SCardEstablishContext estabelece o contexto do gerenciador de recursos (o escopo) no qual as operações de banco de dados são executadas.
Sintaxe
LONG SCardEstablishContext(
[in] DWORD dwScope,
[in] LPCVOID pvReserved1,
[in] LPCVOID pvReserved2,
[out] LPSCARDCONTEXT phContext
);
Parâmetros
[in] dwScope
Escopo do contexto do gerenciador de recursos. Esse parâmetro pode usar um dos valores a seguir.
[in] pvReserved1
Reservado para uso futuro e deve ser NULL. Esse parâmetro permitirá que um aplicativo de gerenciamento com privilégios adequados atue em nome de outro usuário.
[in] pvReserved2
Reservado para uso futuro e deve ser NULL.
[out] phContext
Um identificador para o contexto do gerenciador de recursos estabelecido. Esse identificador agora pode ser fornecido a outras funções que tentam trabalhar nesse contexto.
Valor retornado
Se a função for bem-sucedida, a função retornará SCARD_S_SUCCESS.
Se a função falhar, será exibido um código de erro. Para obter mais informações, consulte Valores retornados de cartão inteligente.
Comentários
O identificador de contexto retornado por SCardEstablishContext pode ser usado por funções de consulta e gerenciamento de banco de dados. Para obter mais informações, consulte Funções de consulta de banco de dados de cartão inteligente e funções de gerenciamento de banco de dados de cartão inteligente.
Para liberar um contexto de gerenciador de recursos estabelecido, use SCardReleaseContext.
Se o cliente tentar uma operação de cartão inteligente em uma sessão remota, como uma sessão de cliente em execução em um servidor terminal e o sistema operacional em uso não oferecer suporte ao redirecionamento de cartão inteligente, essa função retornará ERROR_BROKEN_PIPE.
Exemplos
O exemplo a seguir estabelece um contexto do gerenciador de recursos.
SCARDCONTEXT hSC;
LONG lReturn;
// Establish the context.
lReturn = SCardEstablishContext(SCARD_SCOPE_USER,
NULL,
NULL,
&hSC);
if ( SCARD_S_SUCCESS != lReturn )
printf("Failed SCardEstablishContext\n");
else
{
// Use the context as needed. When done,
// free the context by calling SCardReleaseContext.
// ...
}
Requisitos
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | winscard.h |
Biblioteca | Winscard.lib |
DLL | Winscard.dll |