Share via


Función WerReportHang (errorrep.h)

Inicia informes de "sin respuesta" en la ventana especificada.

Sintaxis

HRESULT WerReportHang(
  [in]           HWND   hwndHungApp,
  [in, optional] PCWSTR pwzHungApplicationName
);

Parámetros

[in] hwndHungApp

Identificador de la ventana que no responde.

[in, optional] pwzHungApplicationName

Nombre de la aplicación que no responde que se va a mostrar en la interfaz de usuario de informes de bloqueo. El nombre está limitado a 128 caracteres, incluido el terminador NULL . Si es NULL, WER intenta obtener el nombre de los recursos de imagen de destino. Si no puede obtener el nombre de la imagen, se usará el nombre de la imagen.

Valor devuelto

Devuelve S_OK si la función pudo iniciar los informes o un código de error en caso de error. Tenga en cuenta que S_OK no significa necesariamente que los informes de "ninguna respuesta" se hayan completado correctamente, solo que se inició.

Comentarios

Precaución Las aplicaciones no deben usar esta API para informar de ninguna respuesta de las ventanas de nivel superior; La detección y los informes sin respuesta están disponibles para todas las ventanas de nivel superior en Windows XP y versiones posteriores de forma predeterminada. Solo debe usar esta función para informar de ninguna respuesta de las ventanas secundarias. Normalmente, esta función solo se usa cuando la ventana de nivel superior y sus ventanas secundarias son propiedad de procesos diferentes y se detecta una no respuesta en una ventana secundaria.
 
Esta función iniciará informes sin respuesta que finalizarán el proceso que creó la ventana. El autor de la llamada es responsable de determinar cuándo una ventana secundaria no responde y debe pedir al usuario su consentimiento antes de notificar la no respuesta. Una manera típica de detectar una ventana que no responde es comprobar que responde a los mensajes de ventana de forma oportuna. Puede usar la función SendMessageTimeout para detectar esta condición.

Esta función es asincrónica; no espera a que se completen los informes sin respuesta. No hay ninguna manera de cancelar los informes sin respuesta después de iniciarse.

Si usa esta función, es importante que cumpla los siguientes requisitos:

  • Asegúrese de que las ventanas secundarias se crean mediante un proceso independiente. Una vez completado el informe sin respuesta, finalizará el proceso que creó la ventana.
  • Proporcione pistas visuales en la ventana secundaria que no responde; no-response reporting will not dim the child window, it will only show the reporting dialog box.
  • Confirme que el usuario quiere finalizar la ventana secundaria que no responde antes de llamar a esta función.
  • Para que la interfaz de usuario de informes sin respuesta aparezca delante de la ventana que no responde, la aplicación debe llamar a la función AllowSetForegroundWindow (pasando ASFW_ANY para el identificador de proceso) desde el proceso de la ventana de nivel superior.

Requisitos

   
Cliente mínimo compatible Windows Vista con SP1 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado errorrep.h
Library Faultrep.lib
Archivo DLL Faultrep.dll