BOOLEAN
IoRaiseInformationalHardError(
IN NTSTATUS ErrorStatus,
IN PUNICODE_STRING String, /* optional */
IN PKTHREAD Thread /* optional */
);
IoRaiseInformationalHardError sends a popup to the user, warning about a device I/O error that indicates why a user I/O request failed.
IoRaiseInformationalHardError returns TRUE if the popup was successfully queued. This routine returns FALSE if popups are disabled for Thread, a pool allocation failed, too many popups are already queued, or an equivalent popup is already pending a user response (such as waiting for the user to press RETURN).
IoRaiseInformationalHardError takes a system-defined NT error value as a parameter. Driver writers can use the event log APIs to communicate driver-defined event strings to the user.
Callers of IoRaiseInformationalHardError must be running at IRQL < DISPATCH_LEVEL.