IWMSAuthenticationPlugin::CreateAuthenticationContext

banner art

Previous Next

IWMSAuthenticationPlugin::CreateAuthenticationContext

The CreateAuthenticationContext method creates the authentication context and retrieves a pointer to it. The server calls this method at least once for each client that must be authenticated.

Syntax

  HRESULT CreateAuthenticationContext(
  IWMSAuthenticationContext**  ppAuthenCtx
);

Parameters

ppAuthenCtx

[out] Pointer to a pointer to an IWMSAuthenticationContext interface.

Return Values

If the method succeeds, the plug-in must return S_OK. To report an error, the plug-in can return any HRESULT other than S_OK. If the plug-in uses the IWMSEventLog interface to log error information directly to the Windows Event Viewer, it is recommended that it return NS_E_PLUGIN_ERROR_REPORTED. Typically, the server attempts to make plug-in error information available to the server object model, the Windows Event Viewer, and the troubleshooting list in the details pane of the Windows Media Services MMC. However, if the plug-in uses the IWMSEventLog interface to send custom error information to the Windows Event Viewer, returning NS_E_PLUGIN_ERROR_REPORTED stops the server from also logging to the event viewer. For more information about retrieving plug-in error information, see Identifying Plug-in Errors.

Example Code

STDMETHODIMP CAuthentPlugin::CreateAuthenticationContext(
                    IWMSAuthenticationContext **ppAuthenCtx )
{
    HRESULT hr = S_OK;

    // Create an instance of the object that implements the
    // IWMSAuthenticationContext interface. You must define
    // the CAuthentContext class.
    CComObject<CAuthentContext> *spAuthentContext;
    hr = CComObject<CAuthentContext>::CreateInstance( &spAuthentContext );
    spAuthentContext->AddRef();

    // Call QueryInterface() to retrieve an IWMSAuthenticationContext
    // pointer.
    hr = spAuthentContext->QueryInterface( 
                    IID_IWMSAuthenticationContext, 
                    (void **) ppAuthenCtx );

    return( hr );       
}

Requirements

Header: authen.h.

Library: WMSServerTypeLib.dll.

Platform: Windows Server 2003, Enterprise Edition; Windows Server 2003, Datacenter Edition; Windows Server 2008.

See Also

Previous Next