DMsgrSessionManagerEvents::OnLockChallenge event

[OnLockChallenge is no longer available for use as of Windows Vista. See Windows Messenger for more information.]

Notifies a Messenger client that an authentication challenge from a Messenger service has been received.


void OnLockChallenge(
  [in] long lCookie,
  [in] BSTR bstrChallenge


lCookie [in]

LONG that has the same value that the Messenger client passes to the Messenger service as the lCookie parameter of the RequestChallenge method.

bstrChallenge [in]

BSTR that is generated by the Messenger service to uniquely identify the challenge transaction.

Return value

This event does not return a value.


The Messenger client application receives two parameters. The first parameter, lCookie, enables the Messenger client application to identify the challenge request to which the event corresponds. The value of lCookie is the same as that which is passed to the Messenger service when the application calls the RequestChallenge method. Therefore, it is important that a Messenger client application generates a different value for lCookie each time a challenge request is made to the Messenger service , and for each object that requires a Lock and Key authentication transaction.

The second parameter, bstrChallenge, is generated by the Messenger service . The key used by the Messenger client application is appended to this string and the result is encrypted with an RSA-MD5 Message Digest Algorithm (MD5). See Messenger Lock and Key API for more information. The MD5 encrypted string is passed back to the Messenger service as the bstrResponse of the SendResponse method when the Messenger client application responds to the Messenger service authentication challenge.


Minimum supported client
Windows 2000 Professional, Windows XP [desktop apps only]
Minimum supported server
Windows Server 2003 [desktop apps only]
End of client support
Windows XP
End of server support
Windows Server 2003
Messenger 4.5
Sessions.h (include Mdispid.h)

See also






Messenger Session Invite and Messenger Private APIs

Messenger Lock and Key API