SCardEstablishContext function
Applies to: desktop apps only
The SCardEstablishContext function establishes the resource manager context (the scope) within which database operations are performed.
Syntax
LONG WINAPI SCardEstablishContext( __in DWORD dwScope, __in LPCVOID pvReserved1, __in LPCVOID pvReserved2, __out LPSCARDCONTEXT phContext );
Parameters
- dwScope [in]
-
Scope of the resource manager context. This parameter can be one of the following values.
- pvReserved1 [in]
-
Reserved for future use and must be NULL. This parameter will allow a suitably privileged management application to act on behalf of another user.
- pvReserved2 [in]
-
Reserved for future use and must be NULL.
- phContext [out]
-
A handle to the established resource manager context. This handle can now be supplied to other functions attempting to do work within this context.
Return value
If the function succeeds, the function returns SCARD_S_SUCCESS.
If the function fails, it returns an error code. For more information, see Smart Card Return Values.
Remarks
The context handle returned by SCardEstablishContext can be used by database query and management functions. For more information, see Smart Card Database Query Functions and Smart Card Database Management Functions.
To release an established resource manager context, use SCardReleaseContext.
If the client attempts a smart card operation in a remote session, such as a client session running on a terminal server, and the operating system in use does not support smart card redirection, this function returns ERROR_BROKEN_PIPE.
Examples
The following example establishes a resource manager context.
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. // ... }
Requirements
|
Minimum supported client | Windows 2000 Professional |
|---|---|
|
Minimum supported server | Windows 2000 Server |
|
Header |
|
|
Library |
|
|
DLL |
|
See also
Send comments about this topic to Microsoft
Build date: 3/13/2012
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.
// ...
}
- 3/15/2012
- LeonWang.LW.1983