EapHostPeerInvokeInteractiveUI function

Raises an interactive user interface used to get credentials from the user. For example, this function can be used to raise a UI that retrieves credentials from a smart card, and prompts the user to enter the corresponding PIN.

EapHostPeerInvokeInteractiveUI must be called on threads that have COM initialized for Single Threaded Apartment. This can be achieved by calling COM API CoInitialize; when the supplicant has finished with the STA thread CoUninitialize must be called before exiting.


DWORD WINAPI EapHostPeerInvokeInteractiveUI(
  _In_   HWND hwndParent,
  _In_   DWORD dwSizeofUIContextData,
  _In_   const BYTE *pUIContextData,
  _Out_  DWORD *pdwSizeofDataFromInteractiveUI,
  _Out_  BYTE **ppDataFromInteractiveUI,
  _Out_  EAP_ERROR **ppEapError


hwndParent [in]

The handle of the parent window under which configuration dialog appears.

dwSizeofUIContextData [in]

The size, in bytes, of the buffer pointed to by the pUIContextData parameter.

pUIContextData [in]

A pointer to a buffer that contains the supplicant UI context data from EAPHost. The context data is returned by EapHostPeerGetUIContext. The buffer is of size dwSizeOfUIContextData.

pdwSizeofDataFromInteractiveUI [out]

A pointer to a DWORD that represents the size, in bytes, of the buffer pointed to by the ppDataFromInteractiveUI parameter.

ppDataFromInteractiveUI [out]

A pointer to a pointer to a byte buffer that contains data from the interactive UI necessary for authentication to continue. The parameter ppDataFromInteractiveUI should be passed to EapHostPeerSetUIContext as the IN parameter pUIContextData. After consuming the data, this memory must be freed by calling EapHostPeerFreeMemory. The buffer is of size pdwSizeofDataFromInteractiveUI.

ppEapError [out]

A pointer to a pointer to an EAP_ERROR structure that contains any errors raised by EAPHost during the execution of this function call. After consuming the error data, this memory must be freed by calling EapHostPeerFreeErrorMemory.


The supplicant should call EapHostPeerQueryInteractiveUIInputFields function first after receiving the EapHostPeerResponseInvokeUI action code from EAPHost. If EAP_E_EAPHOST_METHOD_OPERATION_NOT_SUPPORTED is returned, the supplicant should resort to the traditional model of invoking method interactive UI by calling EapHostPeerInvokeInteractiveUI.

If called,EapHostPeerInvokeInteractiveUI raises the user interface for the EAP method after the supplicant calls EapHostPeerGetUIContext. This occurs when a call to EapHostPeerProcessReceivedPacket returns the EapHostPeerResponseInvokeUi action code. EapHostPeerGetUIContext returns UI context that the supplicant then passes to EapHostPeerInvokeInteractiveUI to raise the UI.


Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2008 [desktop apps only]







See also

EAPHost Supplicant Configuration Functions



Community Additions

© 2015 Microsoft