ICredentialProviderCredentialEvents2 interface (credentialprovider.h)
Extends the ICredentialProviderCredentialEvents interface by adding methods that enable batch updating of fields in theLogon UI or Credential UI.
Inheritance
The ICredentialProviderCredentialEvents2 interface inherits from ICredentialProviderCredentialEvents. ICredentialProviderCredentialEvents2 also has these types of members:
Methods
The ICredentialProviderCredentialEvents2 interface has these methods.
ICredentialProviderCredentialEvents2::BeginFieldUpdates Starts a batch update to fields in the logon or credential UI. |
ICredentialProviderCredentialEvents2::EndFieldUpdates Finishes and commits the batch updates started by BeginFieldUpdates. |
ICredentialProviderCredentialEvents2::SetFieldOptions Specifies whether a specified field in the logon or credential UI should display a "password reveal" glyph or is expected to receive an e-mail address. |
Remarks
In Windows 7 and Windows Vista, many credential providers used ICredentialProviderEvents::CredentialsChanged to update UI. While this works, it causes a re-enumeration of all the credentials from the calling credential provider. The processing of this event can, under some circumstances, lead to flashing or focus changes in the UI due to this re-enumeration. Therefore, using ICredentialProviderEvents::CredentialsChanged solely for UI updates is discouraged. The new recommendation is as follows:
- Use ICredentialProviderEvents::CredentialsChanged only if a credential provider needs to do automatically logon a user or change the number of credentials it is enumerating.
- Use ICredentialProviderCredentialEvents2 to update a credential provider's UI.
When interacting with a background thread, the use of ICredentialProviderCredentialEvents2 is similar to the use of ICredentialProviderCredentialEvents, in that proper inter-thread communication methods must be used.
When to implement
Third-parties do not implement this interface. Call the QueryInterface method on ICredentialProviderCredentialEvents to obtain this object.Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 8 [desktop apps only] |
Minimum supported server | Windows Server 2012 [desktop apps only] |
Target Platform | Windows |
Header | credentialprovider.h |