Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los siguientes códigos de detención se incluyen en este conjunto de pruebas.
Llamada peligrosa a TerminateThread.
Causa probableEsta detención se genera si un subproceso (el identificador de subproceso es parameter1) finaliza explícitamente mediante TerminateThread.Esta función es muy peligrosa porque introduce daños en los datos y interbloqueos (según MSDN).
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Identificador de subproceso para el autor de la llamada de Terminatethread.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Peligroso
- Id. de detención: TERMINATE_THREAD_CALL
- Código de detención: 0x100
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Posible desbordamiento de pila en condiciones de memoria baja.
Causa probableEsta detención se genera si el tamaño de confirmación de pila inicial de un subproceso es tal que se puede generar un desbordamiento de pila en condiciones de memoria baja si no se puede extender la pila.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - No se usa.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Peligroso
- Id. de detención: STACK_OVERFLOW
- Código de detención: 0x101
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
ExitProcess se llama mientras se siguen ejecutando varios subprocesos.
Causa probableEsta detención se genera si un subproceso llama a ExitProcess mientras se ejecutan varios subprocesos. En tal caso, se llamará internamente a TerminateThread para cada subproceso y esto puede crear interbloqueos o daños en los datos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Número de subprocesos en ejecución.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Peligroso
- Id. de detención: INVALID_EXIT_PROCESS_CALL
- Código de detención: 0x102
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se llama a LoadLibrary durante DllMain.
Causa probableEsta detención se genera si el código dentro de DllMain llama a LoadLibrary o FreeLibary. Es el comportamiento prohibido por MSDN.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dll Name (use du to dump).
- Parámetro 2 -Dirección base del archivo DLL .
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Peligroso
- Id. de detención: INVALID_LOAD_LIBRARY_CALL
- Código de detención: 0x103
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se llama a FreeLibrary durante DllMain.
Causa probableEsta detención se genera si el código dentro de DllMain llama a LoadLibrary o FreeLibary. Es el comportamiento prohibido por MSDN.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dll Name (use du to dump).
- Parámetro 2 -Dirección base del archivo DLL .
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Peligroso
- Id. de detención: INVALID_FREE_LIBRARY_CALL
- Código de detención: 0x104
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se llama a SetProcessWorkingSetSize con MinimumWorkingSetSize = 0xFFFFFFFF.
Causa probableUse MinimumWorkingSetSize = (SIZE_T) -1.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - No se usa.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Peligroso
- Id. de detención: INVALID_MINIMUM_PROCESS_WORKING_SIZE
- Código de detención: 0x105
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se llama a SetProcessWorkingSetSize con MaximumWorkingSetSize = 0xFFFFFFFF.
Causa probableUse MaximumWorkingSetSize = (SIZE_T) -1.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - No se usa.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Peligroso
- Id. de detención: INVALID_MAXIMUM_PROCESS_WORKING_SIZE
- Código de detención: 0x106
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se llama a SetProcessWorkingSetSizeEx con MinimumWorkingSetSize = 0xFFFFFFFF.
Causa probableUse MinimumWorkingSetSize = (SIZE_T) -1.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - No se usa.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Peligroso
- Id. de detención: INVALID_MINIMUM_PROCESS_WORKING_SIZE_EX
- Código de detención: 0x107
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se llama a SetProcessWorkingSetSizeEx con MaximumWorkingSetSize = 0xFFFFFFFF.
Causa probableUse MaximumWorkingSetSize = (SIZE_T) -1.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - No se usa.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Peligroso
- Id. de detención: INVALID_MAXIMUM_PROCESS_WORKING_SIZE_EX
- Código de detención: 0x108
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El subproceso no puede poseer una sección crítica.
Causa probableEsta detención se genera si un subproceso (el identificador de subproceso es parameter1) finaliza, se suspende o está en un estado (el subproceso de trabajo ha finalizado un elemento de trabajo) en el que no puede contener una sección crítica. El subproceso actual es el culpable. Para depurar esta detención, use los siguientes comandos del depurador:
- kb : para obtener el seguimiento de la pila actual. Si el subproceso actual es el propietario de la sección crítica, probablemente llame a ExitThread. El subproceso actual debe haber liberado la sección crítica antes de salir. Si el subproceso actual llama a TerminateThread o SuspendThread, no debe hacerlo para un subproceso que contenga una sección crítica.
- !cs -s <parámetro> : información de volcado de memoria sobre esta sección crítica.
- parámetro ln2><: para mostrar símbolos cerca de la dirección de la sección crítica. Esto debería ayudar a identificar la sección crítica filtrada.
- parámetro dps4><: para volcar el seguimiento de la pila de esta inicialización de sección crítica.
- Parámetro 1 - Identificador de subproceso.
- Parámetro 2 Dirección de sección crítica.
- Parámetro 3 - Dirección de información de depuración de sección crítica.
- Parámetro 4 - Critical section initialization stack trace( Seguimiento de pila de inicialización de sección crítica).
- Capa de prueba: Cerraduras
- Id. de detención: EXIT_THREAD_OWNS_LOCK
- Código de detención: 0x200
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Descargar dll que contiene una sección crítica activa.
Causa probableEsta detención se genera si un archivo DLL tiene una variable global que contiene una sección crítica y el archivo DLL se descarga, pero no se ha eliminado la sección crítica. Para depurar esta detención, use los siguientes comandos del depurador:
- du <parameter3> : para volcar el nombre del archivo DLL culpable.
- .reload dllname o .reload dllname = <parameter4> : para volver a cargar los símbolos de ese archivo DLL.
- !cs -s <parameter1> : información de volcado de memoria sobre esta sección crítica.
- parámetro ln1 <:> para mostrar símbolos cerca de la dirección de la sección crítica. Esto debería ayudar a identificar la sección crítica filtrada.
- dps <parameter2> : para volcar el seguimiento de la pila de esta inicialización de sección crítica.
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Critical section initialization stack trace( Seguimiento de pila de inicialización de sección crítica).
- Parámetro 3 Dirección de nombre - DLL.
- Parámetro 4 Dirección base de - DLL.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_IN_UNLOADED_DLL
- Código de detención: 0x201
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Liberar bloque de montón que contenga una sección crítica activa.
Causa probableEsta detención se genera si una asignación de montón contiene una sección crítica, la asignación se libera y la sección crítica no se ha eliminado. Para depurar esta detención, use los siguientes comandos del depurador:
- !cs -s <parameter1> : información de volcado de memoria sobre esta sección crítica.
- parámetro ln1 <:> para mostrar símbolos cerca de la dirección de la sección crítica. Esto debería ayudar a identificar la sección crítica filtrada.
- dps <parameter2> : para volcar el seguimiento de la pila de esta inicialización de sección crítica.
- < parameter3> y <parameter4> podrían ayudar a comprender dónde se asignó este bloque de montón (el tamaño de la asignación probablemente sea significativo).
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Critical section initialization stack trace( Seguimiento de pila de inicialización de sección crítica).
- Parámetro 3 - Dirección de bloque del montón.
- Parámetro 4 - Tamaño del bloque del montón.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_IN_FREED_HEAP
- Código de detención: 0x202
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Doble sección crítica inicializada o dañada.
Causa probableNormalmente, esta detención se genera si se ha inicializado una sección crítica más de una vez. En este caso, parameter3 y parameter4 son las direcciones de seguimiento de pila para dos de estas inicializaciones. Otras veces es posible obtener esta detención si se ha dañado la sección crítica o su estructura de información de depuración. En este segundo caso, es posible que parameter3 y parameter4 no sean válidos e inútiles. Para depurar esta detención:
- !cs -s -d <parameter2> : información de volcado sobre esta sección crítica.
- parámetro ln1 <:> para mostrar símbolos cerca de la dirección de la sección crítica. Esto puede ayudar a identificar la sección crítica si se trata de una variable global.
- dps <parameter3> y dps <parameter4> : para identificar las dos rutas de acceso de código para inicializar esta sección crítica.
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Dirección de la estructura de información de depuración que se encuentra en la lista activa.
- Parámetro 3 - Primer seguimiento de pila de inicialización.
- Parámetro 4 - Segundo seguimiento de pila de inicialización.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_DOUBLE_INITIALIZE
- Código de detención: 0x203
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Memoria libre que contiene una sección crítica activa.
Causa probableEsta detención se genera si se liberó la memoria que contiene una sección crítica, pero la sección crítica no se ha eliminado mediante DeleteCriticalSection. Para depurar esta detención, use los siguientes comandos del depurador:
- !cs -s -d <parameter2> : información de volcado sobre esta sección crítica.
- dps <parameter3> : para identificar la ruta de acceso del código para inicializar esta sección crítica.
En la mayoría de los casos, el comprobador de bloqueo detecta secciones críticas filtradas inmediatamente contenidas en una asignación de montón, un intervalo DLL, una asignación de memoria virtual o un intervalo de memoria asignado mapViewOfFile y emite diferentes detenciones en estos casos. Por lo tanto, quedan muy pocos casos para esta detención del comprobador. El bloqueo debe estar en un intervalo de memoria liberado por código en modo kernel o liberado entre procesos por API como VirtualFreeEx. Normalmente, esta detención se encontrará si una detención anterior (por ejemplo, LOCK_IN_FREED_HEAP o LOCK_IN_UNLOADED_DLL) se continuó presionando "g" en la consola del depurador.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Dirección de información de depuración de sección crítica.
- Parámetro 3 - Critical section initialization stack trace( Seguimiento de pila de inicialización de sección crítica).
- Parámetro 4 - No se usa.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_IN_FREED_MEMORY
- Código de detención: 0x204
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Sección crítica dañada.
Causa probableEsta detención se genera si el campo DepurarInfo de la sección crítica apunta a memoria libre. Normalmente, se encuentra otra estructura DebugInfo válida en la lista de secciones críticas activas. Sin daños, los dos punteros deben ser idénticos. Para depurar esta detención, use los siguientes comandos del depurador:
- !cs -s -d <parameter3> : información de volcado sobre esta sección crítica basada en el contenido actual de la estructura de información de depuración que se encuentra en la lista activa (esta estructura rara vez está dañada, por lo que normalmente esta información es confiable).
- !cs -s <parameter1> : información de volcado sobre esta sección crítica basada en el contenido actual de la estructura de sección crítica (la estructura ya está dañada, por lo que a veces esta información no es confiable).
- parámetro dps4><: para identificar la ruta de acceso del código para inicializar esta sección crítica. Volque la sección crítica en address parameter1 y busque el patrón de daños. Con buenos símbolos para ntdll.dl puede usar los siguientes comandos:
- dt ntdll!_RTL_CRITICAL_SECTION LOCK_ADDRESS
- dt ntdll!_RTL_CRITICAL_SECTION_DEBUG DEBUG_ADDRESS
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Dirección de información de depuración no válida de esta sección crítica.
- Parámetro 3 - Dirección de la información de depuración que se encuentra en la lista activa.
- Parámetro 4 - Seguimiento de pila de inicialización.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_CORRUPTED
- Código de detención: 0x205
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Subproceso de propietario de sección crítica no válido.
Causa probableEsta detención se genera si el identificador del subproceso del propietario no es válido en el contexto actual. Para depurar esta detención:
- !cs -s <parameter1> : información de volcado de memoria sobre esta sección crítica.
- parámetro ln1 <:> para mostrar símbolos cerca de la dirección de la sección crítica. Esto debería ayudar a identificar la sección crítica.
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Subproceso propietario.
- Parámetro 3 - Se esperaba un subproceso propietario.
- Parámetro 4 - Dirección de información de depuración de sección crítica.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_INVALID_OWNER
- Código de detención: 0x206
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Recuento de recursividad de sección crítica no válido.
Causa probableEsta detención se genera si el campo recuento de recursividad de la estructura de sección crítica no es válido en el contexto actual. Para depurar esta detención:
- !cs -s <parameter1> : información de volcado de memoria sobre esta sección crítica.
- parámetro ln1 <:> para mostrar símbolos cerca de la dirección de la sección crítica. Esto debería ayudar a identificar la sección crítica.
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Recuento de recursividad.
- Parámetro 3 - Número de recursividad esperado.
- Parámetro 4 - Dirección de información de depuración de sección crítica.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_INVALID_RECURSION_COUNT
- Código de detención: 0x207
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Eliminación de la sección crítica con recuento de bloqueos no válidos.
Causa probableEsta detención se genera si una sección crítica es propiedad de un subproceso si se elimina o si la sección crítica no está inicializada. Para depurar esta detención:
- !cs -s <parameter1> : información de volcado de memoria sobre esta sección crítica. Si el subproceso propietario es 0, no se ha inicializado la sección crítica.
- parámetro ln1 <:> para mostrar símbolos cerca de la dirección de la sección crítica. Esto debería ayudar a identificar la sección crítica.
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Recuento de bloqueos.
- Parámetro 3 - Se esperaba el recuento de bloqueos.
- Parámetro 4 - Subproceso propietario.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_INVALID_LOCK_COUNT
- Código de detención: 0x208
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Sección crítica superada o dañada.
Causa probableEsta detención se genera si se libera una sección crítica más veces que el subproceso actual lo adquirió. Para depurar esta detención:
- !cs -s <parameter1> : información de volcado de memoria sobre esta sección crítica.
- !cs -s -d <parameter4> : información de volcado sobre esta sección crítica.
- parámetro ln1 <:> para mostrar símbolos cerca de la dirección de la sección crítica. Esto debería ayudar a identificar la sección crítica.
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Recuento de bloqueos.
- Parámetro 3 - Se esperaba el recuento de bloqueos.
- Parámetro 4 - Dirección de información de depuración de sección crítica.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_OVER_RELEASED
- Código de detención: 0x209
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Sección crítica no inicializada.
Causa probableEsta detención se genera si se usa una sección crítica sin inicializarse o después de eliminarla. Para depurar esta detención:
- parámetro ln1 <:> para mostrar símbolos cerca de la dirección de la sección crítica. Esto debería ayudar a identificar la sección crítica.
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Dirección de información de depuración de sección crítica.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_NOT_INITIALIZED
- Código de detención: 0x210
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Ya se ha inicializado la sección crítica.
Causa probableEsta detención se genera si el subproceso actual reinicializa una sección crítica. Para depurar esta detención:
- !cs -s <parameter1> o !cs -s -d parameter2: información de volcado de memoria sobre esta sección crítica.
- parámetro ln1 <:> para mostrar símbolos cerca de la dirección de la sección crítica. Esto puede ayudar a identificar la sección crítica si se trata de una variable global.
- dps <parameter3> : para identificar la ruta de acceso del código para la primera inicialización de esta sección crítica.
- kb : para mostrar el seguimiento de la pila actual, que reinicializa esta sección crítica.
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Dirección de información de depuración de sección crítica.
- Parámetro 3 - Primer seguimiento de pila de inicialización. Usar dps para volcarlo si no es NULL
- Parámetro 4 - No se usa.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_ALREADY_INITIALIZED
- Código de detención: 0x211
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Liberar memoria virtual que contenga una sección crítica activa.
Causa probableEsta detención se genera si el subproceso actual llama a VirtualFree en un bloque de memoria que contiene una sección crítica activa. La aplicación debe llamar a DeleteCriticalSection en esta sección crítica antes de liberar esta memoria.
- kb : para mostrar el seguimiento de pila actual, que llama a VirtualFree. El culpable probable es el archivo DLL que llama a VirtualFree.
- !cs -s <parameter1> : información de volcado de memoria sobre esta sección crítica.
- dps <parameter2> : para identificar la ruta de acceso del código para la inicialización de esta sección crítica.
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Critical section initialization stack trace( Seguimiento de pila de inicialización de sección crítica).
- Parámetro 3 - Dirección de bloque de memoria.
- Parámetro 4 - Tamaño del bloque de memoria.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_IN_FREED_VMEM
- Código de detención: 0x212
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Desasignación de la región de memoria que contiene una sección crítica activa.
Causa probableEsta detención se genera si el subproceso actual llama a UnmapViewOfFile en un bloque de memoria que contiene una sección crítica activa. La aplicación debe llamar a DeleteCriticalSection en esta sección crítica antes de quitar el mapa de esta memoria.
- kb : para mostrar el seguimiento de pila actual, que llama a UnmapViewOfFile . El culpable probable es el archivo DLL que llama a UnmapViewOfFile.
- !cs -s <parameter1> : información de volcado de memoria sobre esta sección crítica.
- dps <parameter2> : para identificar la ruta de acceso del código para la inicialización de esta sección crítica.
- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Critical section initialization stack trace( Seguimiento de pila de inicialización de sección crítica).
- Parámetro 3 - Dirección de bloque de memoria.
- Parámetro 4 - Tamaño del bloque de memoria.
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_IN_UNMAPPED_MEM
- Código de detención: 0x213
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El subproceso actual no posee ninguna sección crítica.
Causa probableEsta detención se genera si el subproceso actual llama a LeaveCriticalSection, pero, según la contabilidad del comprobador interno, no posee ninguna sección crítica. Si parameter2 es cero, probablemente se trata de un error en el subproceso actual. Intenta dejar una sección crítica que no entró, o quizás llame a LeaveCriticalSection más veces de lo que llamó a EnterCriticalSection para la misma sección crítica. Si parameter2 no es cero (es un número entero negativo), es probable que las estructuras de datos del comprobador interno estén dañadas.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - Número de secciones críticas que pertenecen al subproceso actual.
- Parámetro 3 - No se usa
- Parámetro 4 - No se usa
- Capa de prueba: Cerraduras
- Id. de detención: THREAD_NOT_LOCK_OWNER
- Código de detención: 0x214
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Uso de la sección crítica que es privada para otro archivo DLL.
Causa probableEsta detención se genera si el subproceso actual intenta usar un bloqueo privado que reside dentro de otro archivo DLL. Por ejemplo, a.dll intenta escribir una sección crítica definida dentro de ntdll.dll. Los bloqueos privados no se pueden usar en archivos DLL.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 Dirección de sección crítica.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa
- Parámetro 4 - No se usa
- Capa de prueba: Cerraduras
- Id. de detención: LOCK_PRIVATE
- Código de detención: 0x215
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El bloqueo SRW no se inicializa.
Causa probableEsta detención se genera si un subproceso intenta usar el bloqueo SRW (Param1) que no se inicializa. Para depurar, use "kb" para obtener el seguimiento de la pila actual. Aquí es donde se usa el bloqueo SRW. El bloqueo SRW debe inicializarse mediante InitializeSRWLock antes de poder usarlo.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - SRW Lock
- Parámetro 2 - No se usa
- Parámetro 3 - No se usa
- Parámetro 4 - No se usa
- Capa de prueba: SRWLock
- Id. de detención: NOT_INITIALIZED
- Código de detención: 0x250
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El bloqueo SRW ya se ha inicializado.
Causa probableEsta detención se genera si se vuelve a inicializar el bloqueo SRW (Param1). Si otros subprocesos usan activamente el bloqueo SRW, volver a inicializar el bloqueo provocará un comportamiento impredecible por parte de la aplicación, incluidos bloqueos y bloqueos. El seguimiento de la pila de inicialización puede mostrar una adquisición si el bloqueo SRW se inicializó estáticamente.
- kb : para obtener el seguimiento de la pila actual. Aquí es donde se vuelve a inicializar el bloqueo SRW.
- dps <parameter3> : para obtener el seguimiento de la pila de inicialización del bloqueo SRW. Este seguimiento de pila puede mostrar una adquisición si el bloqueo se inicializó estáticamente.
- Parámetro 1 - SRW Lock
- Parámetro 2 - ThreadId del subproceso que inicializó el bloqueo SRW.
- Parámetro 3 - Dirección del seguimiento de la pila de inicialización. Use la dirección> dps <para ver dónde se inicializó el bloqueo SRW.
- Parámetro 4 - No se usa
- Capa de prueba: SRWLock
- Id. de detención: ALREADY_INITIALIZED
- Código de detención: 0x251
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Acquire-Release no coincide en el bloqueo SRW.
Causa probableEsta detención se genera si el bloqueo SRW (Param1) se está liberando con una API de versión incorrecta. Si el bloqueo de SRW se adquirió para el acceso compartido y se libera mediante la API de versión exclusiva o el bloqueo de SRW se adquirió para acceso exclusivo y se está liberando mediante la API de versión compartida. Esto puede dar lugar a un comportamiento imprevisible por parte de la aplicación, incluidos bloqueos y bloqueos.
- kb : para obtener el seguimiento de la pila actual. Aquí es donde se libera el bloqueo de SRW mediante la API incorrecta.
- dps <parameter3> : para obtener el seguimiento de la pila de adquisición del bloqueo SRW.
- Parámetro 1 - SRW Lock
- Parámetro 2 - ThreadId del subproceso que adquirió el bloqueo SRW.
- Parámetro 3 - Dirección del seguimiento de la pila de adquisición. Use la dirección> dps <para ver dónde se adquirió el bloqueo SRW.
- Parámetro 4 - No se usa
- Capa de prueba: SRWLock
- Id. de detención: MISMATCHED_ACQUIRE_RELEASE
- Código de detención: 0x252
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El mismo subproceso adquiere el bloqueo SRW de forma recursiva.
Causa probableEsta detención se genera si el mismo subproceso adquiere el bloqueo SRW (Param1) de forma recursiva. Esto provocará un interbloqueo y el subproceso se bloquearía indefinidamente. La adquisición recursiva de un bloqueo SRW en modo exclusivo provocará un interbloqueo. La adquisición recursiva de un bloqueo SRW en modo compartido provocará un interbloqueo cuando haya un subproceso esperando acceso exclusivo. Considere el ejemplo siguiente: - El subproceso A adquiere el bloqueo SRW en modo compartido: el subproceso B intenta acruir el bloqueo SRW en modo exclusivo y espera: el subproceso A intenta adquirir el bloqueo SRW en modo compartido de forma recursiva. Esto se realizará correctamente siempre y cuando no haya ningún waiter exclusivo (en este caso B). Dado que los bloqueos SRW no tienen hambre de escritura, el subproceso A espera detrás del subproceso B. Ahora, el subproceso B está esperando el subproceso A, que está esperando a que el subproceso B provoque una espera circular y, por tanto, un interbloqueo.
- kb : para obtener el seguimiento de la pila actual. Aquí es donde el bloqueo SRW se adquiere de forma recursiva.
- dps <parameter2> : para obtener el seguimiento de la pila para la primera adquisición.
- Parámetro 1 - SRW Lock
- Parámetro 2 - Dirección del primer seguimiento de la pila de adquisición. Use la dirección> dps <para ver dónde se adquirió el bloqueo SRW.
- Parámetro 3 - No se usa
- Parámetro 4 - No se usa
- Capa de prueba: SRWLock
- Id. de detención: RECURSIVE_ACQUIRE
- Código de detención: 0x253
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El subproceso que sale o finaliza posee un bloqueo SRW.
Causa probableEsta parada se genera si el subproceso (Param2) que posee el bloqueo SRW (Param1) se está cerrando o finalizando. Esto provocará un bloqueo SRW huérfano y los subprocesos que intentan adquirir este bloqueo se bloquearían indefinidamente.
- kb : para obtener el seguimiento de la pila actual. Aquí es donde el subproceso sale o se está finalizando.
- dps <parameter3> : para obtener el seguimiento de la pila de adquisición del bloqueo SRW.
- Parámetro 1 - SRW Lock
- Parámetro 2 - ThreadId del subproceso que sale o finaliza.
- Parámetro 3 - Dirección del seguimiento de la pila de adquisición. Use la dirección> dps <para ver dónde se adquirió el bloqueo SRW.
- Parámetro 4 - No se usa
- Capa de prueba: SRWLock
- Id. de detención: EXIT_THREAD_OWNS_LOCK
- Código de detención: 0x254
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Este subproceso no adquirió el bloqueo SRW.
Causa probableEsta detención se genera si el subproceso (Param1) del subproceso (Param2) que no adquirió el bloqueo. Esto representa una práctica de programación incorrecta que es difícil de obtener correctamente y puede provocar un comportamiento impredecible por parte de la aplicación.
- kb : para obtener el seguimiento de la pila actual. Aquí es donde el subproceso libera el bloqueo SRW que no adquirió.
- parámetro dps4><: para obtener el seguimiento de la pila de adquisición del bloqueo SRW.
- Parámetro 1 - SRW Lock
- Parámetro 2 - ThreadId actual.
- Parámetro 3 - ThreadId del subproceso que adquirió el bloqueo SRW.
- Parámetro 4 - Dirección del seguimiento de la pila de adquisición. Use la dirección> dps <para ver dónde se adquirió el bloqueo SRW.
- Capa de prueba: SRWLock
- Id. de detención: INVALID_OWNER
- Código de detención: 0x255
- Severidad: Advertencia
- Error único:
- Informe de errores: Ninguno
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
La memoria que se libera contiene un bloqueo SRW activo.
Causa probableEsta detención se genera si la dirección de memoria (Param1) que se libera contiene un bloqueo SRW activo que todavía está en uso. Esto puede dar lugar a un comportamiento imprevisible por parte de la aplicación, incluidos bloqueos y bloqueos.
- kb : para obtener el seguimiento de la pila actual. Aquí es donde se libera la memoria que contiene un bloqueo DE SRW activo.
- parámetro dps4><: para obtener el seguimiento de la pila de adquisición del bloqueo SRW.
- Parámetro 1 - SRW Lock
- Parámetro 2 - Dirección de la memoria que se libera.
- Parámetro 3 - ThreadId del subproceso que adquirió el bloqueo SRW.
- Parámetro 4 - Dirección del seguimiento de la pila de adquisición. Use la dirección> dps <para ver dónde se adquirió el bloqueo SRW.
- Capa de prueba: SRWLock
- Id. de detención: IN_FREED_MEMORY
- Código de detención: 0x256
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El archivo DLL que se descarga contiene un bloqueo SRW activo.
Causa probableEsta detención se genera si el archivo DLL que se descarga (Param2) contiene un bloqueo SRW activo (Param1) que todavía está en uso. Esto puede dar lugar a un comportamiento imprevisible por parte de la aplicación, incluidos bloqueos y bloqueos.
- kb : para obtener el seguimiento de la pila actual. Aquí es donde se descarga el archivo DLL que contiene un bloqueo SRW activo.
- du <parameter2> : para buscar el nombre del archivo DLL que se está descargando.
- parámetro dps4><: para obtener el seguimiento de la pila de adquisición del bloqueo SRW.
- Parámetro 1 - SRW Lock
- Parámetro 2 - Dirección del nombre del archivo DLL que se descarga. Use du <address> para ver el nombre.
- Parámetro 3 - ThreadId del subproceso que adquirió el bloqueo SRW.
- Parámetro 4 - Dirección del seguimiento de la pila de adquisición. Use la dirección> dps <para ver dónde se adquirió el bloqueo SRW.
- Capa de prueba: SRWLock
- Id. de detención: IN_UNLOADED_DLL
- Código de detención: 0x257
- Severidad: Advertencia
- Error único:
- Informe de errores: Ninguno
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El bloqueo SRW se adquiere en la ruta de cierre, lo que puede dar lugar a un bloqueo.
Causa probableEsta parada se genera si se adquiere un bloqueo SRW (Param1) en una ruta de acceso de apagado. Los bloqueos SRW no son compatibles con el apagado. Si se intenta adquirir un bloqueo SRW huérfano (debido al apagado del proceso o por algún otro motivo), se producirá un bloqueo. Llamar a ConditionVariableSRW en una ruta de acceso de apagado también puede provocar que este comprobador se detenga a medida que se libere el bloqueo y se adquiera durante esta llamada. Para depurar esta detención:
- kb : para obtener el seguimiento de la pila actual. Aquí es donde se adquiere el bloqueo SRW en una ruta de acceso de apagado.
- Parámetro 1 - SRW Lock
- Parámetro 2 - No se usa
- Parámetro 3 - No se usa
- Parámetro 4 - No se usa
- Capa de prueba: SRWLock
- Id. de detención: ACQUIRE_ON_SHUTDOWN_PATH
- Código de detención: 0x258
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Excepción de identificador no válida para el seguimiento de pila actual.
Causa probableEsta detención se genera si la función de la parte superior de la pila pasó un identificador no válido a las rutinas del sistema. Normalmente, un comando kb simple mostrará cuál es el valor del identificador pasado (debe ser uno de los parámetros, normalmente el primero). Si el valor es NULL, esto es claramente incorrecto. Si el valor parece correcto, debe usar la extensión del depurador !htrace para obtener un historial de operaciones relacionadas con este valor de identificador. En la mayoría de los casos, debe ser que el valor de identificador se use después de cerrarse.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Código de excepción.
- Parámetro 2 - Registro de excepción. Use .exr para mostrarlo.
- Parámetro 3 - Registro de contexto. Use .cxr para mostrarlo.
- Parámetro 4 - No se usa.
- Capa de prueba: Manijas
- Id. de detención: INVALID_HANDLE
- Código de detención: 0x300
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Índice TLS no válido usado para el seguimiento de la pila actual.
Causa probableEsta detención se genera si la función de la parte superior de la pila pasó un índice TLS no válido a las rutinas del sistema TLS. Normalmente, un comando kb simple mostrará lo que está mal. El error típico aquí es asumir un valor determinado para un índice TLS en lugar de llamar a TlsAlloc. Esto puede ocurrir pensando en que siempre se obtiene el valor N, por lo que no es necesario llamar a TlsAlloc o con más frecuencia debido a una variable no inicializada.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Índice TLS no válido.
- Parámetro 2 - Se esperaba una parte inferior del índice.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Manijas
- Id. de detención: INVALID_TLS_VALUE
- Código de detención: 0x301
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Parámetros no válidos para la llamada a WaitForMultipleObjects.
Causa probableEsta detención se genera si la función de la parte superior de la pila denominada WaitForMultipleObjects con NULL como dirección de la matriz de identificadores debe esperar o con cero como el número de identificadores. Un comando kb simple mostrará la función que llama a esta API incorrectamente.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección del vector de identificadores de objeto.
- Parámetro 2 - Número de identificadores.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Manijas
- Id. de detención: INCORRECT_WAIT_CALL
- Código de detención: 0x302
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Identificador NULL pasado como parámetro. Se debe usar un identificador válido.
Causa probableEsta detención se genera si la función de la parte superior de la pila pasó un identificador NULL a las rutinas del sistema.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - No se usa.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Manijas
- Id. de detención: NULL_HANDLE
- Código de detención: 0x303
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Esperando un identificador de subproceso en DllMain.
Causa probableEsta detención se genera si el subproceso actual está ejecutando código dentro de la función DllMain de uno de los archivos DLL cargados en el proceso actual y llama a WaitForSingleObject o WaitForMultipleObjects para esperar en un identificador de subproceso en el mismo proceso. Esto probablemente provocaría un interbloqueo porque el identificador del subproceso no se señalará a menos que el segundo subproceso salga. Cuando el segundo subproceso llamará a ExitThread, intentará adquirir el bloqueo del cargador dll y, a continuación, llamará a DllMain (DLL_THREAD_DETACH) para todos los archivos DLL del proceso actual. Pero el bloqueo del cargador es propiedad del primer subproceso (el que está esperando en el identificador de subproceso) para que los dos subprocesos interbloqueen.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Identificador de subproceso.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Manijas
- Id. de detención: WAIT_IN_DLLMAIN
- Código de detención: 0x304
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Tipo de objeto incorrecto para el identificador.
Causa probableEsta detención se genera si el subproceso actual llama a una API con un identificador a un objeto con un tipo de objeto incorrecto. Por ejemplo, llamar a SetEvent con un identificador de semáforo como parámetro generará esta detención. Para depurar esta detención:
- kb : para mostrar el seguimiento de la pila actual. El culpable es probablemente el archivo DLL que llama a verifier.dll;
- du <parameter2> : para mostrar el tipo real del identificador. El valor de identificador es parameter1. En el ejemplo anterior, se mostrará: "Semáforo".
- du <parameter3> : para mostrar el tipo de objeto esperado por la API. En el ejemplo anterior, este nombre será: "Event".
- !htrace <parameter1> puede resultar útil porque mostrará el seguimiento de la pila para las operaciones de apertura y cierre recientes en este identificador.
- Parámetro 1 - Handle value (Identificador de valor).
- Parámetro 2 - Nombre del tipo de objeto. Use du para mostrarlo
- Parámetro 3 - Se esperaba el nombre del tipo de objeto. Use du para mostrarlo
- Parámetro 4 - No se usa.
- Capa de prueba: Manijas
- Id. de detención: INCORRECT_OBJECT_TYPE
- Código de detención: 0x305
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Descarga del archivo DLL que asignó el índice TLS que no se liberó.
Causa probableEsta detención se genera si se descarga un archivo DLL que asignó un índice TLS antes de liberar ese índice TLS. Para depurar esta detención:
- du <parameter3> : muestra el nombre del archivo DLL culpable;
- .reload xxx.dll=<parameter4> : volver a cargar símbolos para el archivo DLL culpable (si es necesario). xxx.dll es el nombre del archivo DLL que se muestra en el paso anterior;
- u <parameter2> : desensamblar el código que asignó tls. Esto debe apuntar a la función que asignó tls pero olvidó liberarla antes de que se descargara el archivo DLL.
- Parámetro 1 - TLS index
- Parámetro 2 - Dirección del código que asignó este índice TLS.
- Parámetro 3 Dirección de nombre - DLL. Use du para volcarlo.
- Parámetro 4 Dirección base de - DLL.
- Capa de prueba: TLS
- Id. de detención: TLS_LEAK
- Código de detención: 0x350
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Estructura TLS del comprobador dañado.
Causa probableEsta detención se genera si las estructuras de comprobador internas usadas para almacenar el estado de las ranuras TLS para el subproceso están dañadas. Es muy probable que esto se deba a daños aleatorios en el proceso.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 Dirección - TEB.
- Parámetro 2 - Dirección TEB esperada.
- Parámetro 3 - Identificador de subproceso.
- Parámetro 4 - Id. de subproceso esperado.
- Capa de prueba: TLS
- Id. de detención: CORRUPTED_TLS
- Código de detención: 0x351
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Uso de un índice TLS no válido.
Causa probableEsta detención se genera si se usa un índice TLS no válido. En la mayoría de los casos, se debe a que el código sigue usando este índice cuando se llama a TlsFree. Este es un ejemplo para el subproceso de grupo de subprocesos. T1: Dll carga y TlsAlloc T1: Devolución de llamada de cola T1: Devolución de llamada o cancelada o omitida T1: TlsFree T2: La devolución de llamada se ejecuta y llama a TlsSetValue T1: Descargas dll
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - TLS index
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: TLS
- Id. de detención: INVALID_TLS_INDEX
- Código de detención: 0x352
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Liberar bloque de memoria virtual con un tamaño no válido o una dirección de inicio.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta una descarga virtual o dll con una dirección de inicio o un tamaño de inicio no válidos de la asignación de memoria. En el caso de la descarga de DLL, esto probablemente significa un daño en la memoria dentro de la lista dll cargada. Para depurar esta detención, examine el seguimiento de la pila actual y la dirección de memoria y el tamaño que está a punto de liberarse e intente determinar por qué no son válidos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección base de asignación.
- Parámetro 2 - Tamaño de la región de memoria.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: INVALID_FREEMEM
- Código de detención: 0x600
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Llamada de aocción virtual incorrecta.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta una llamada a VirtualAlloc con una dirección de inicio o tamaño no válidos de la asignación de memoria. Para depurar esta detención, examine el seguimiento de pila actual (kb) y la dirección y el tamaño de memoria que está a punto de asignarse e intente determinar por qué no son válidos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Puntero a la dirección base de asignación.
- Parámetro 2 - Puntero al tamaño de la región de memoria.
- Parámetro 3 - No se usa
- Parámetro 4 - No se usa
- Capa de prueba: Memoria
- Id. de detención: INVALID_ALLOCMEM
- Código de detención: 0x601
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Llamada incorrecta a la vista de mapa.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta una llamada MapViewOfFile con una dirección base o un tamaño no válidos de la asignación. Para depurar esta detención, examine el seguimiento de la pila actual (kb) y la dirección y el tamaño de memoria que está a punto de asignarse e intente determinar por qué no son válidos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Puntero a la dirección base de asignación.
- Parámetro 2 - Puntero al tamaño de la vista.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: INVALID_MAPVIEW
- Código de detención: 0x602
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Sondeo de una dirección no válida.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta una llamada a IsBadXXXPtr con una dirección no válida (por ejemplo, una dirección en modo kernel, en lugar de una dirección normal en modo de usuario) para que se sondee el búfer de memoria. Para depurar esta detención, examine el seguimiento de pila actual (kb) e intente determinar por qué el autor de la llamada de la función IsBadXXXPtr terminó con una dirección no válida. Muchas veces, la dirección es falsa sin formato, por ejemplo, un puntero no inicializado. MSDN Library enumera algunas razones por las que las aplicaciones no deben usar las API isBadXXXPtr: en un entorno de tareas múltiples preferentes, es posible que algún otro subproceso cambie el acceso del proceso a la memoria que se está probando. La desreferenciación de punteros potencialmente no válidos puede deshabilitar la expansión de la pila en otros subprocesos. Un subproceso que agota su pila, cuando se ha deshabilitado la expansión de la pila, da como resultado la finalización inmediata del proceso primario, sin ventana de error emergente ni información de diagnóstico. Se espera que los subprocesos de un proceso cooperen de tal manera que uno no libere memoria que el otro necesite. El uso de esta función no niega la necesidad de hacerlo. Si esto no se hace, la aplicación puede producir un error de forma impredecible. Por todas estas razones, se recomienda no usar nunca estas API.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección de inicio.
- Parámetro 2 - Tamaño del bloque de memoria.
- Parámetro 3 - Dirección no válida.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: PROBE_INVALID_ADDRESS
- Código de detención: 0x603
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Sondeo de memoria libre.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta una llamada IsBadXXXPtr para una asignación de memoria gratuita. Esto es muy malo porque es posible que, en algunos otros casos, esta memoria ya se haya reutilizado para alguna otra asignación. Dado que la ruta de acceso de código actual (kb) no posee esa memoria, podría acabar dañando la memoria de otra persona, con efectos desastrosos. Para depurar esta detención, examine el seguimiento de pila actual (kb) e intente determinar por qué el autor de la llamada de la función IsBadXXXPtr terminó sondeando memoria libre. La dirección podría ser simple falso (por ejemplo, puntero sin inicializar) o quizás ya libre memoria. Si una de las API VirtualFree o UnmapViewOfFile ya liberó la memoria, "!avrf -vs -a parameter3" buscará un registro de seguimientos de pila de las rutas de acceso de código que asignaron o liberaron esa dirección y mostrarán estos seguimientos de pila si están disponibles. Esto podría mostrar el seguimiento de la pila que liberó esta memoria. Con más frecuencia, la memoria es una asignación de montón ya libre. Para comprobar esa posibilidad, "!avrf -hp -a parameter3" buscará un registro de seguimientos de pila de las rutas de acceso de código que asignaron o liberaron esa dirección desde el montón y mostrarán estos seguimientos de pila si están disponibles. MSDN Library enumera algunas razones por las que las aplicaciones no deben usar las API isBadXXXPtr: en un entorno de tareas múltiples preferentes, es posible que algún otro subproceso cambie el acceso del proceso a la memoria que se está probando. La desreferenciación de punteros potencialmente no válidos puede deshabilitar la expansión de la pila en otros subprocesos. Un subproceso que agota su pila, cuando se ha deshabilitado la expansión de la pila, da como resultado la finalización inmediata del proceso primario, sin ventana de error emergente ni información de diagnóstico. Se espera que los subprocesos de un proceso cooperen de tal manera que uno no libere memoria que el otro necesite. El uso de esta función no niega la necesidad de hacerlo. Si esto no se hace, la aplicación puede producir un error de forma impredecible. Por todas estas razones, se recomienda no usar nunca estas API.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección de inicio.
- Parámetro 2 - Tamaño del bloque de memoria.
- Parámetro 3 - Dirección de la página de memoria libre.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: PROBE_FREE_MEM
- Código de detención: 0x604
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Sondeo de una página de protección.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta una llamada IsBadXXXPtr para una asignación de memoria que contiene al menos un GUARD_PAGE. Esto es muy malo porque es muy posible que este GUARD_PAGE sea el final de la pila actual de un subproceso. Como se documenta en MSDN Library: La desreferenciación de punteros potencialmente no válidos puede deshabilitar la expansión de la pila en otros subprocesos. Un subproceso que agota su pila, cuando se ha deshabilitado la expansión de la pila, da como resultado la finalización inmediata del proceso primario, sin ventana de error emergente ni información de diagnóstico. Para depurar esta detención, examine el seguimiento de pila actual (kb) e intente determinar por qué el autor de la llamada de la función IsBadXXXPtr terminó sondeando un GUARD_PAGE. MSDN Library enumera algunas razones por las que las aplicaciones no deben usar las API isBadXXXPtr: en un entorno de tareas múltiples preferentes, es posible que algún otro subproceso cambie el acceso del proceso a la memoria que se está probando. La desreferenciación de punteros potencialmente no válidos puede deshabilitar la expansión de la pila en otros subprocesos. Un subproceso que agota su pila, cuando se ha deshabilitado la expansión de la pila, da como resultado la finalización inmediata del proceso primario, sin ventana de error emergente ni información de diagnóstico. Se espera que los subprocesos de un proceso cooperen de tal manera que uno no libere memoria que el otro necesite. El uso de esta función no niega la necesidad de hacerlo. Si esto no se hace, la aplicación puede producir un error de forma impredecible. Por todas estas razones, se recomienda no usar nunca estas API.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección de inicio.
- Parámetro 2 - Tamaño del bloque de memoria.
- Parámetro 3 - Dirección de la página de protección.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: PROBE_GUARD_PAGE
- Código de detención: 0x605
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Sondeo de la dirección NULL.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta una llamada IsBadXXXPtr con una dirección NULL. Para depurar esta detención, examine el seguimiento de pila actual (kb) e intente determinar por qué el autor de la llamada de la función IsBadXXXPtr terminó con la dirección NULL. Normalmente, este es el signo de que alguien no comprueba el valor devuelto de una de las funciones de asignación de memoria. Por ejemplo, el código siguiente es incorrecto:
int main (void)
{
PVOID p;
p = malloc (1024);
Use (p);
return 0;
}
void Use (PVOID p)
{
if (IsBadReadPtr (p)) {
return;
}
//
// p is safe to be used here.
//
}
Este código debe volver a escribirse como este:
int main (void)
{
PVOID p;
p = malloc (1024);
if (NULL == p)) {
return -1;
}
Use (p);
return 0;
}
void Use (PVOID p)
{
//
// p is safe to be used here.
//
}
MSDN Library enumera algunas razones por las que las aplicaciones no deben usar las API isBadXXXPtr: en un entorno de tareas múltiples preferentes, es posible que algún otro subproceso cambie el acceso del proceso a la memoria que se está probando. La desreferenciación de punteros potencialmente no válidos puede deshabilitar la expansión de la pila en otros subprocesos. Un subproceso que agota su pila, cuando se ha deshabilitado la expansión de la pila, da como resultado la finalización inmediata del proceso primario, sin ventana de error emergente ni información de diagnóstico. Se espera que los subprocesos de un proceso cooperen de tal manera que uno no libere memoria que el otro necesite. El uso de esta función no niega la necesidad de hacerlo. Si esto no se hace, la aplicación puede producir un error de forma impredecible. Por todas estas razones, se recomienda no usar nunca estas API.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - No se usa.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: PROBE_NULL
- Código de detención: 0x606
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Bloque de memoria de sondeo con una dirección o tamaño de inicio no válidos.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta una llamada a IsBadXXXPtr con una dirección de inicio no válida (por ejemplo, una dirección en modo kernel, en lugar de una dirección del modo de usuario normal) o un tamaño no válido para que se sondee el búfer de memoria. Para depurar esta detención, examine el seguimiento de pila actual (kb) e intente determinar por qué el autor de la llamada de la función IsBadXXXPtr terminó con una dirección o tamaño no válidos. Muchas veces, la dirección o el tamaño son falsas sin formato, por ejemplo, variables sin inicializar. MSDN Library enumera algunas razones por las que las aplicaciones no deben usar las API isBadXXXPtr: en un entorno de tareas múltiples preferentes, es posible que algún otro subproceso cambie el acceso del proceso a la memoria que se está probando. La desreferenciación de punteros potencialmente no válidos puede deshabilitar la expansión de la pila en otros subprocesos. Un subproceso que agota su pila, cuando se ha deshabilitado la expansión de la pila, da como resultado la finalización inmediata del proceso primario, sin ventana de error emergente ni información de diagnóstico. Se espera que los subprocesos de un proceso cooperen de tal manera que uno no libere memoria que el otro necesite. El uso de esta función no niega la necesidad de hacerlo. Si esto no se hace, la aplicación puede producir un error de forma impredecible. Por todas estas razones, se recomienda no usar nunca estas API.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección de inicio.
- Parámetro 2 - Tamaño del bloque de memoria.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: PROBE_INVALID_START_OR_SIZE
- Código de detención: 0x607
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Descargar dll con un tamaño no válido o una dirección de inicio.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta una descarga dll con una dirección de inicio o un tamaño de inicio no válidos del intervalo de memoria DLL. Esto probablemente significa que hay daños en la memoria dentro de la lista de DLL cargada de ntdll.dll interna.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección base de memoria DLL.
- Parámetro 2 - DLL tamaño del intervalo de memoria.
- Parámetro 3 Dirección de nombre - DLL. Use du para volcarlo.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: INVALID_DLL_RANGE
- Código de detención: 0x608
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Liberar bloque de memoria dentro del intervalo de direcciones de pila del subproceso actual.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta un elemento VirtualFree para un bloque de memoria que forma parte realmente de la pila del subproceso actual (!). Para depurar esta detención, examine el seguimiento de pila actual (kb) e intente comprender por qué la función que llamó VirtualFree pensó que el bloque de memoria se asignó dinámicamente o se asignó, pero que realmente era memoria asignada desde la pila.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección base de asignación.
- Parámetro 2 - Tamaño de la región de memoria.
- Parámetro 3 - Stack low limit address (Dirección de límite bajo de pila).
- Parámetro 4 - Dirección de límite alto de pila.
- Capa de prueba: Memoria
- Id. de detención: FREE_THREAD_STACK_MEMORY
- Código de detención: 0x609
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Parámetro FreeType incorrecto para la operación VirtualFree.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta un elemento VirtualFree con un valor incorrecto para el parámetro FreeType. Los dos únicos valores aceptables para este parámetro son MEM_DECOMMIT y MEM_RELEASE. Si se llama a VirtualFree con cualquier otro valor excepto estos dos, VirtualFree no liberará la memoria. Para depurar este vistazo al seguimiento de pila actual (kb): el autor de la llamada de VirtualFree es probablemente el culpable.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Valor incorrecto usado por la aplicación.
- Parámetro 2 - Se esperaba el valor correcto 1.
- Parámetro 3 - Se esperaba el valor correcto 2.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: INVALID_FREE_TYPE
- Código de detención: 0x60A
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Intentando liberar el bloque de memoria virtual que ya está libre.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta un elemento VirtualFree para una dirección que ya está libre. Para depurar esta detención, examine el seguimiento de pila actual (kb) e intente determinar por qué la memoria ya está libre, pero la aplicación está intentando liberarla de nuevo. '!avrf -vs -a parameter1' buscará un registro de seguimientos de pila de las rutas de acceso de código que asignaron o liberaron esa dirección y mostrarán estos seguimientos de pila si están disponibles. Esto podría mostrar el seguimiento de la pila que liberó esta memoria.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección de bloque de memoria.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: MEM_ALREADY_FREE
- Código de detención: 0x60B
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Parámetro Size incorrecto para la operación VirtualFree (MEM_RELEASE).
Causa probableEsta detención se genera si el comprobador de la aplicación detecta un virtualFree (MEM_RELEASE) con un valor distinto de cero para el parámetro dwSize. Cuando se usa MEM_RELEASE , el único valor aceptable para este parámetro es 0. Si se llama a VirtualFree con cualquier otro valor excepto 0, VirtualFree no liberará la memoria. Para depurar este vistazo al seguimiento de pila actual (kb): el autor de la llamada de VirtualFree es probablemente el culpable.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Tamaño incorrecto usado por la aplicación.
- Parámetro 2 - Se esperaba un tamaño correcto (0).
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: INVALID_FREE_SIZE
- Código de detención: 0x60C
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Excepción inesperada generada en la rutina de punto de entrada dll.
Causa probableEsta detención se genera si la función de punto de entrada (DllMain) de un archivo DLL genera una excepción. Un ejemplo por el que esto es malo es: si DllMain(DLL_PROCESS_ATTACH) genera una excepción, el cargador de DLL de Windows: - Detectar y ocultar la excepción; - Descargar el archivo DLL sin llamar a su DllMain(DLL_PROCESS_DETACH). Por lo tanto, en muchos casos el archivo DLL ya asignó algunos recursos, después generó la excepción y no tendrá la oportunidad de liberar estos recursos en DllMain (DLL_PROCESS_DETACH). Para depurar esta detención:
- du <parameter1> : para mostrar el nombre del archivo DLL;
- Parámetro .exr2><: para mostrar la información de excepción;
- Parámetro .cxr3>< seguido de kb: para mostrar la información del contexto de excepción y el seguimiento de la pila durante el momento en que se generó la excepción;
- < parameter4> es la dirección de una estructura de comprobador interno y no tiene ninguna importancia para la mayoría de los usuarios comprobadores.
- Parámetro 1 - DLL name (use du para volcarlo).
- Parámetro 2 - Registro de excepción. Use .exr para mostrarlo.
- Parámetro 3 - Registro de contexto. Use .cxr para mostrarlo.
- Parámetro 4 - Verifier dll descriptor
- Capa de prueba: Memoria
- Id. de detención: DLL_UNEXPECTED_EXCEPTION
- Código de detención: 0x60D
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Excepción inesperada generada en la función de subproceso.
Causa probableEsta detención se genera si una función de subproceso genera una excepción. Esto es malo porque todo el proceso se matará. Para depurar esta detención:
- < parameter1> puede ser significativo para el tipo de excepción. Por ejemplo, un código de excepción C0000005 significa infracción de acceso;
- Parámetro .exr2><: para mostrar la información de excepción;
- Parámetro .cxr3>< seguido de kb: para mostrar la información del contexto de excepción.
- Parámetro 1 - Código de excepción.
- Parámetro 2 - Registro de excepción. Use .exr para mostrarlo.
- Parámetro 3 - Registro de contexto. Use .cxr para mostrarlo.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: THREAD_UNEXPECTED_EXCEPTION
- Código de detención: 0x60E
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Excepción inesperada generada al sondear la memoria.
Causa probableEsta detención se genera si se obtiene una excepción durante una llamada a IsBadXXXPtr. Esto significa que el búfer de memoria que estamos sondeando no tiene realmente la protección asumida por el autor de la llamada, o que la memoria ya se liberó, etc. Consulte la explicación anterior sobre otro código de detención (PROBE_INVALID_ADDRESS, PROBE_FREE_MEM, PROBE_GUARD_PAGE, PROBE_NULL, PROBE_INVALID_START_OR_SIZE) para obtener más ejemplos de por qué no se recomienda usar las API IsBadXXXPtr. Para depurar esta detención:
- < parameter1> normalmente será C0000005 y eso significa infracción de acceso;
- Parámetro .exr2><: para mostrar la información de excepción;
- Parámetro .cxr3>< seguido de kb: para mostrar la información del contexto de excepción y el seguimiento de la pila en el momento en que se generó la excepción.
- Parámetro 1 - Código de excepción.
- Parámetro 2 - Registro de excepción. Use .exr para mostrarlo.
- Parámetro 3 - Registro de contexto. Use .cxr para mostrarlo.
- Parámetro 4 - No se usa
- Capa de prueba: Memoria
- Id. de detención: PROBE_UNEXPECTED_EXCEPTION
- Código de detención: 0x60F
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Intentando restablecer la dirección NULL.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta una llamada a VirtualFree (MEM_RESET) con un primer parámetro NULL. MEM_RESET solo se debe usar para la memoria ya asignada, por lo que NULL no es un primer parámetro válido en este caso.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - No se usa.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: INVALID_MEM_RESET
- Código de detención: 0x610
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Liberar bloque de memoria del montón dentro del intervalo de direcciones de pila del subproceso actual.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta un HeapFree, para un bloque de memoria que forma parte realmente de la pila del subproceso actual (!). Para depurar esta detención, examine el seguimiento de pila actual (kb) e intente comprender por qué la función que llamó HeapFree pensó que el bloque de memoria se asignó dinámicamente o se asignó, pero que realmente era memoria asignada desde la pila.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección base de asignación.
- Parámetro 2 - Tamaño de la región de memoria.
- Parámetro 3 - Stack low limit address (Dirección de límite bajo de pila).
- Parámetro 4 - Dirección de límite alto de pila.
- Capa de prueba: Memoria
- Id. de detención: FREE_THREAD_STACK_MEMORY_AS_HEAP
- Código de detención: 0x612
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Desasignación de la región de memoria dentro del intervalo de direcciones de pila del subproceso actual.
Causa probableEsta detención se genera si el comprobador de la aplicación detecta un UnmapViewOfFile, para un bloque de memoria que forma parte realmente de la pila del subproceso actual (!). Para depurar esta detención, examine el seguimiento de pila actual (kb) e intente comprender por qué la función que llamó a UnmapViewOfFile pensó que el bloque de memoria se asignó dinámicamente o se asignó, pero que realmente era memoria asignada desde la pila.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección base de asignación.
- Parámetro 2 - Tamaño de la región de memoria.
- Parámetro 3 - Stack low limit address (Dirección de límite bajo de pila).
- Parámetro 4 - Dirección de límite alto de pila.
- Capa de prueba: Memoria
- Id. de detención: FREE_THREAD_STACK_MEMORY_AS_MAP
- Código de detención: 0x613
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Dirección RTL_RESOURCE incorrecta.
Causa probableEsta detención se genera si la aplicación intenta usar NULL o alguna otra dirección incorrecta (por ejemplo, una dirección en modo kernel) como dirección de un objeto válido. RtlInitializeResource (NULL) es una llamada API incorrecta que desencadenará este tipo de detención del comprobador. param1 es la dirección incorrecta usada y el culpable está en el seguimiento de la pila (mostrarlo con kb).
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Address.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: INVALID_RESOURCE_ADDRESS
- Código de detención: 0x614
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Dirección de sección crítica no válida.
Causa probableEsta detención se genera si la aplicación intenta usar NULL o alguna otra dirección incorrecta (por ejemplo, una dirección en modo kernel) como dirección de un objeto válido. EnterCriticalSection(NULL) es una llamada API incorrecta que desencadenará este tipo de detención del comprobador. param1 es la dirección incorrecta usada y el culpable está en el seguimiento de la pila (mostrarlo con kb).
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Address.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: INVALID_CRITSECT_ADDRESS
- Código de detención: 0x615
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Intente ejecutar código en memoria no ejecutable.
Causa probableEsta detención se genera si la aplicación intenta ejecutar código desde una dirección que no es ejecutable o libre. Para depurar esta detención:
- u <parameter2> : para desemblar el código culpable
- Parámetro .exr3><: para mostrar la información de excepción
- Parámetro .cxr4>< seguido de kb: para mostrar la información del contexto de excepción y el seguimiento de la pila durante el tiempo en que se generó la excepción.
- Parámetro 1 - Dirección a la que se accede.
- Parámetro 2 - Código que realiza acceso no válido.
- Parámetro 3 - Registro de excepción. Use .exr para mostrarlo.
- Parámetro 4 - Registro de contexto. Use .cxr para mostrarlo.
- Capa de prueba: Memoria
- Id. de detención: THREAD_UNEXPECTED_EXCEPTION_CODE
- Código de detención: 0x616
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Excepción inesperada generada al inicializar el búfer de salida.
Causa probableEsta detención se genera si se obtiene una excepción al inicializar un búfer especificado como parámetro de salida para una API de Win32 o CRT. Esto suele significar que el tamaño del búfer de salida especificado es incorrecto. Para depurar esta detención:
- Parámetro .exr3><: para mostrar la información de excepción
- Parámetro .cxr4>< seguido de kb: para mostrar la información del contexto de excepción y el seguimiento de la pila en el momento en que se generó la excepción.
- Parámetro 1 - Dirección de inicio del búfer.
- Parámetro 2 - Tamaño del búfer.
- Parámetro 3 - Registro de excepción. Use .exr para mostrarlo.
- Parámetro 4 - Registro de contexto. Use .cxr para mostrarlo.
- Capa de prueba: Memoria
- Id. de detención: OUTBUFF_UNEXPECTED_EXCEPTION
- Código de detención: 0x617
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Excepción inesperada al intentar encontrar el tamaño del bloque del montón.
Causa probableEsta detención se genera si se obtiene una excepción al llamar a HeapSize para un bloque de montón que se está liberando. Esto normalmente significa que la dirección de bloque del montón especificada es incorrecta o que el montón está dañado. Para depurar esta detención:
- Parámetro .exr3><: para mostrar el registro de excepción
- Parámetro .cxr4>< seguido de kb: para mostrar la información del contexto de excepción y el seguimiento de la pila en el momento en que se generó la excepción.
- Parámetro 1 - Dirección del bloque del montón que se libera.
- Parámetro 2 - Identificador del montón.
- Parámetro 3 - Registro de excepción. Use .exr para mostrarlo.
- Parámetro 4 - Registro de contexto. Use .cxr para mostrarlo.
- Capa de prueba: Memoria
- Id. de detención: SIZE_HEAP_UNEXPECTED_EXCEPTION
- Código de detención: 0x618
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Liberar bloque de memoria con una dirección de inicio no válida.
Causa probableEsta detención se genera si el programa llama a VirtualFree (MEM_RELEASE) con un parámetro lpAddress que no es la dirección base devuelta por la función VirtualAlloc o VirtualAllocEx cuando se reservó la región de las páginas; Para depurar esta detención:
- kb : para mostrar el seguimiento de pila actual, que llama a VirtualFree. El culpable probable es el archivo DLL que llama a VirtualFree.
- Parámetro 1 - Dirección del bloque de memoria que se libera.
- Parámetro 2 - Se esperaba una dirección de bloque de memoria correcta.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: INVALID_FREEMEM_START_ADDRESS
- Código de detención: 0x619
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Desasignación del bloque de memoria con una dirección de inicio no válida.
Causa probableEsta parada se genera si el programa llama a UnmapViewOfFile con un parámetro lpBaseAddress que no es idéntico al valor devuelto por una llamada anterior a la función MapViewOfFile o MapViewOfFileEx. Para depurar esta detención:
- kb : para mostrar el seguimiento de pila actual, que llama a UnmapViewOfFile. El culpable probable es el archivo DLL que llama a UnmapViewOfFile.
- Parámetro 1 - Dirección del bloque de memoria que se está desasignación.
- Parámetro 2 - Se esperaba una dirección de bloque de memoria correcta.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: INVALID_UNMAPVIEW_START_ADDRESS
- Código de detención: 0x61A
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
excepción inesperada generada en la función de devolución de llamada de grupo de subprocesos.
Causa probableEsta detención se genera si una función de devolución de llamada en el subproceso del grupo de subprocesos genera una excepción. Para depurar esta detención:
- < parameter1> puede ser significativo para el tipo de excepción. Por ejemplo, un código de excepción C0000005 significa infracción de acceso.
- Parámetro .exr2><: para mostrar la información de excepción.
- Parámetro .cxr3>< seguido de kb: para mostrar la información del contexto de excepción.
- Parámetro 1 - Código de excepción
- Parámetro 2 - Registro de excepción. Usar .exr para mostrarlo
- Parámetro 3 - Registro de contexto. Use .cxr para mostrarlo.
- Parámetro 4 - No se usa
- Capa de prueba: Memoria
- Id. de detención: THREADPOOL_UNEXPECTED_EXCEPTION
- Código de detención: 0x61B
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
código en memoria no ejecutable
Causa probableEsta detención se genera si la aplicación intenta ejecutar código desde una dirección que no es ejecutable o libre. Para depurar esta detención:
- u <parameter2> : para desemblar el código culpable
- Parámetro .exr3><: para mostrar la información de excepción
- Parámetro .cxr4>< seguido de kb: para mostrar la información del contexto de excepción y el seguimiento de la pila durante el tiempo en que se generó la excepción.
- Parámetro 1 - Dirección a la que se accede
- Parámetro 2 - Código que realiza acceso no válido
- Parámetro 3 - Registro de excepción. Use .exr para mostrarlo.
- Parámetro 4 - Registro de contexto. Use .cxr para mostrarlo.
- Capa de prueba: Memoria
- Id. de detención: THREADPOOL_UNEXPECTED_EXCEPTION_CODE
- Código de detención: 0x61C
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Crear montón ejecutable.
Causa probableEsta detención se genera si la aplicación está creando un montón ejecutable. Esto puede ser un riesgo de seguridad.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - No se usa.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: EXECUTABLE_HEAP
- Código de detención: 0x61D
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Asignar memoria ejecutable.
Causa probableEsta detención se genera si la aplicación asigna memoria ejecutable. Esto puede ser un riesgo de seguridad.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Protección de página especificada por el autor de la llamada.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Memoria
- Id. de detención: EXECUTABLE_MEMORY
- Código de detención: 0x61E
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Intente ejecutar código en memoria no ejecutable (primera oportunidad).
Causa probableEsta detención se genera si la aplicación intenta ejecutar código desde una dirección que no es ejecutable o libre. Para depurar esta detención:
- u <parameter2> : para desemblar el código culpable
- Parámetro .exr3><: para mostrar la información de excepción
- Parámetro .cxr4>< seguido de kb: para mostrar la información del contexto de excepción y el seguimiento de la pila durante el tiempo en que se generó la excepción.
- Parámetro 1 - Dirección a la que se accede.
- Parámetro 2 - Código que realiza acceso no válido.
- Parámetro 3 - Registro de excepción. Use .exr para mostrarlo.
- Parámetro 4 - Registro de contexto. Use .cxr para mostrarlo.
- Capa de prueba: Excepciones
- Id. de detención: FIRST_CHANCE_ACCESS_VIOLATION_CODE
- Código de detención: 0x650
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se ha cambiado la prioridad de este subproceso de grupo de subprocesos.
Causa probableEsta detención se genera si se cambia la prioridad del subproceso cuando se devuelve a threadpool.
Información mostrada por el Comprobador de aplicaciones- Formato: - threadpool thread (%x) having executed Callback (%p) has an altered thread priority (%i -> %i)
- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - Prioridad actual.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: INCONSISTENT_PRIORITY
- Código de detención: 0x700
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se ha cambiado la afinidad de este subproceso de grupo de subprocesos.
Causa probableEsta detención se genera si se cambia la afinidad de subproceso cuando se devuelve a threadpool.
Información mostrada por el Comprobador de aplicaciones- Formato: - threadpool thread (%x) having executed Callback (%p) has an altered thread affinity mask (%p -> %p)
- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - Afinidad actual.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: INCONSISTENT_AFFINITY_MASK
- Código de detención: 0x701
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Msg sin procesar en el grupo de mensajes del subproceso actual.
Causa probableEsta detención se genera si se deja algún mensaje como no procesado cuando se devuelve este subproceso de grupo de subprocesos al grupo. Es peligroso, ya que se procesará en un contexto totalmente diferente. Use !avrf -tp <Param4> para ver los mensajes publicados en este subproceso.
Información mostrada por el Comprobador de aplicaciones- Formato: - threadpool thread (%x) having executed Callback (%p) has outstanding window message (%x: %x)
- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - Threadpool thread id. Use !avrf -tp <threadid> para ver los mensajes publicados en este subproceso.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: ORPHANED_THREAD_MESSAGE
- Código de detención: 0x702
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
La ventana no cerrada pertenece al subproceso actual.
Causa probableEsta detención se genera si alguna ventana se mantiene activa cuando se devuelve este subproceso de grupo de subprocesos al grupo.
Información mostrada por el Comprobador de aplicaciones- Formato: - threadpool thread (%x) having executed Callback (%p) has valid hwnd (%x: %s) que podría recibir mensajes.
- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - Threadpool thread id.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: ORPHANED_THREAD_WINDOW
- Código de detención: 0x703
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
ExitThread() en un subproceso de grupo de subprocesos.
Causa probableEsta detención se genera si se llama a ExitThread en un subproceso de grupo de subprocesos. Está prohibido, ya que hará que el sistema sea inestable. Provocará pérdida de recursos, inmovilización o AV.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - No se usa.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: ILLEGAL_THREAD_EXIT
- Código de detención: 0x704
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El subproceso está en estado de suplantación cuando se devuelve a un subproceso de grupo de subprocesos.
Causa probableEsta detención se genera si la función de devolución de llamada cambia el token de subproceso para suplantar a otro usuario y se olvidó de restablecerlo antes de devolverlo al grupo de subprocesos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - No se usa.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: THREAD_IN_IMPERSONATION
- Código de detención: 0x705
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se llama a una función que requiere un subproceso persistente.
Causa probableEs necesario llamar a algunas API de Microsoft Windows dentro de un subproceso dedicado o persistente. En el grupo de subprocesos, normalmente debe evitar el uso del almacenamiento local de subprocesos y las llamadas asincrónicas que requieren un subproceso persistente, como la función RegNotifyChangeKeyValue. Sin embargo, estas funciones se pueden poner en cola en un subproceso de trabajo persistente mediante QueueUserWorkItem con la opción WT_EXECUTEINPERSISTENTTHREAD. Un kb en el depurador mostrará el autor de la llamada.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - No se usa.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: PERSISTED_THREAD_NEEDED
- Código de detención: 0x706
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El subproceso está en estado de transacción sucia.
Causa probableEsta detención se genera si la función de devolución de llamada olvidó cerrar o restablecer el identificador de transacción actual.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - Identificador de transacción.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: DIRTY_TRANSACTION_CONTEXT
- Código de detención: 0x707
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Este estado de threadpool tiene llamadas CoInit y CoUnInit desequilibradas.
Causa probableEsta detención se genera si la función de devolución de llamada llama a CoInit y CoUnInit desequilibrado.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 Recuentos de llamadas equilibradas.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: DIRTY_COM_STATE
- Código de detención: 0x708
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Los parámetros del objeto de temporizador son incoherentes. El período debe ser 0 cuando se especifica WT_EXECUTEONLYONCE al crear el temporizador
Causa probableEsta parada se genera si el período para indicar que el temporizador no es cero cuando el temporizador se establece en señal solo una vez con la marca WT_EXECUTEONLYONCE
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Period especificado.
- Parámetro 2 - Flags especificados.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: INCONSISTENT_TIMER_PARAMS
- Código de detención: 0x709
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El subproceso threadpool mantiene el bloqueo del cargador dentro de la devolución de llamada.
Causa probableEsta detención se genera si el bloqueo del cargador se mantiene dentro de la devolución de llamada y no se libera cuando el subproceso se devuelve al grupo de subprocesos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - No se usa.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: LOADER_LOCK_HELD
- Código de detención: 0x70A
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El idioma preferido lo establece el subproceso de grupo de subprocesos dentro de la devolución de llamada.
Causa probableEsta detención se genera si el idioma preferido se establece dentro de la devolución de llamada y no se borra cuando el subproceso se devuelve al grupo de subprocesos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - No se usa.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: PREFERRED_LANGUAGES_SET
- Código de detención: 0x70B
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
El subproceso de grupo de subprocesos establece la prioridad en segundo plano dentro de la devolución de llamada.
Causa probableEsta detención se genera si la prioridad en segundo plano está establecida dentro de la devolución de llamada y no está deshabilitada cuando el subproceso se devuelve al grupo de subprocesos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Callback (Función).
- Parámetro 2 - Context.
- Parámetro 3 - Threadpool Seguimiento de la pila de asignación de objetos, use dps para volcarlo.
- Parámetro 4 - No se usa.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: BACKGROUND_PRIORITY_SET
- Código de detención: 0x70C
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
TerminateThread() en un subproceso de grupo de subprocesos.
Causa probableEsta detención se genera si se llama a TerminateThread en un subproceso de grupo de subprocesos. Está prohibido, ya que hará que el sistema sea inestable. Provocará pérdida de recursos, inmovilización o AV.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - No se usa.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: Grupo de subprocesos
- Id. de detención: ILLEGAL_THREAD_TERMINATION
- Código de detención: 0x70D
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
La pila se desenredó cuando la operación asincrónica de E/S está pendiente.
Causa probableEsta detención se genera si la aplicación emitió una operación de E/S que usa una variable de pila y no ha esperado a que se complete la E/S, lo que provoca daños en la pila. Para depurar esta detención:
- dps <parameter4> para mostrar el seguimiento de la pila cuando se emitió la E/S. Parameter1 indica la dirección basada en la pila y el parámetro3 el subproceso que emitió la E/S.
- Parámetro 1 - Dirección de la variable de pila usada en la E/S.
- Parámetro 2 - Puntero de pila actual.
- Parámetro 3 - Subproceso original que emitió la E/S.
- Parámetro 4 - Stack Trace cuando se emitió la E/S.
- Capa de prueba: IO
- Id. de detención: ASYNCIO_STACK_UNWIND
- Código de detención: 0x800
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
La pila estaba dañada cuando la operación asincrónica de E/S está pendiente.
Causa probableEsta detención se genera si la aplicación emitió una operación de E/S que usa una variable de pila y no ha esperado a que se complete la E/S, lo que provoca daños en la pila. Para depurar esta detención:
- dps <parameter4> para mostrar el seguimiento de la pila cuando se emitió la E/S. Parameter1 indica la dirección basada en la pila y el parámetro3 el subproceso que emitió la E/S.
- Parámetro 1 - Dirección de la variable de pila usada en la E/S.
- Parámetro 2 - Puntero de pila actual.
- Parámetro 3 - Subproceso original que emitió la E/S.
- Parámetro 4 - Stack Trace cuando se emitió la E/S.
- Capa de prueba: IO
- Id. de detención: ASYNCIO_CORRUPTED_STACK
- Código de detención: 0x801
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Usar una dirección libre en una operación de E/S pendiente.
Causa probableEsta detención se genera si la aplicación emitió una operación de E/S y liberó la memoria usada en la E/S antes de que se complete la E/S, lo que provoca daños en la memoria, etc. Para depurar esta detención:
- dps <parameter4> : para mostrar el seguimiento de la pila cuando se emitió la E/S. Parameter1 indica la dirección usada en la E/S. Parameter2 indica la dirección que se libera y el parámetro3 el subproceso que emitió la E/S.
- Parámetro 1 - Dirección usada en la E/S.
- Parámetro 2 - Dirección que se libera.
- Parámetro 3 - Subproceso original que emitió la E/S.
- Parámetro 4 - Stack Trace cuando se emitió la E/S.
- Capa de prueba: IO
- Id. de detención: FREED_ADDRESS_IN_PENDINGIO
- Código de detención: 0x802
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se reutiliza un bloque de estado de E/S (SUPERPUESTO) mientras la solicitud de E/S asociada sigue pendiente.
Causa probableEsta detención se genera si la aplicación ha reutilizado un bloque de estado de E/S (SUPERPUESTO) mientras que una solicitud de E/S con ese bloque de estado de E/S (SUPERPUESTO) sigue pendiente. Para depurar esta detención:
- dps <parameter3> para mostrar el seguimiento de la pila cuando se emitió la E/S original. Parameter1 indica la dirección usada en la E/S y el parámetro2 del subproceso que emitió la E/S.
- Parámetro 1 - Dirección del bloque de estado de E/S (SUPERPUESTO).
- Parámetro 2 - Subproceso original que emitió la E/S.
- Parámetro 3 - Stack Trace cuando se emitió la E/S.
- Parámetro 4 - No se usa.
- Capa de prueba: IO
- Id. de detención: REUSED_IOSTATUS_BLOCK
- Código de detención: 0x803
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Uso de una marca no admitida, FILE_ATTRIBUTE_NOT_CONTENT_INDEXED en CreateFile
Causa probableLa versión anterior de MSDN documentó erróneamente CreateFile como compatible con FILE_ATTRIBUTE_NOT_CONTENT_INDEXED. Si esta marca está pensada, debe establecerse con otras funciones de API, como SetFileAttributes.
- parámetro ln1><: para buscar el autor de la llamada de CreateFile.
- Formato: - CreateFile al escribir %hs%ws con marcas %08x %08x %08x
- Parámetro 1 - Dirección de retorno.
- Parámetro 2 - No se usa.
- Parámetro 3 - No se usa.
- Parámetro 4 - No se usa.
- Capa de prueba: IO
- Id. de detención: USING_BAD_CREATEFILE_FLAG
- Código de detención: 0x804
- Severidad: Advertencia
- Error único:
- Informe de errores: Ninguno
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se ha filtrado una asignación de montón.
Causa probableEsta detención se genera si el archivo DLL del propietario de la asignación se descargó dinámicamente mientras posee recursos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección de la asignación filtrada. Ejecute !heap -p -a <address> para obtener información adicional sobre la asignación.
- Parámetro 2 - Dirección al seguimiento de la pila de asignación. Ejecute dps address> (Dirección dps<) para ver la pila de asignación.
- Parámetro 3 - Dirección del nombre dll del propietario. Ejecute du <address> para leer el nombre del archivo DLL.
- Parámetro 4 - Base del archivo dll del propietario. Ejecute .reload <dll_name> = <address> para volver a cargar el archivo DLL del propietario. Use "lm" para obtener más información sobre los módulos cargados y descargados.
- Capa de prueba: Fuga
- Id. de detención: ASIGNACIÓN
- Código de detención: 0x900
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se ha filtrado un HANDLE.
Causa probableEsta detención se genera si el archivo DLL del propietario del identificador se descargó dinámicamente mientras posee recursos. Para depurar esta parada: ejecute el parámetro !htrace1 para obtener información adicional sobre el identificador.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Valor del identificador filtrado. Ejecute el identificador> !htrace <para obtener información adicional sobre el identificador si está habilitado el seguimiento de identificadores.
- Parámetro 2 - Dirección al seguimiento de la pila de asignación. Ejecute dps address> (Dirección dps<) para ver la pila de asignación.
- Parámetro 3 - Dirección del nombre dll del propietario. Ejecute du <address> para leer el nombre del archivo DLL.
- Parámetro 4 - Base del archivo dll del propietario. Ejecute .reload <dll_name> = <address> para volver a cargar el archivo DLL del propietario. Use "lm" para obtener más información sobre los módulos cargados y descargados.
- Capa de prueba: Fuga
- Id. de detención: ASA
- Código de detención: 0x901
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se ha filtrado un HKEY.
Causa probableEsta detención se genera si el archivo DLL del propietario de la clave del Registro se ha descargado dinámicamente mientras posee recursos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Valor de la HKEY filtrada.
- Parámetro 2 - Dirección al seguimiento de la pila de asignación. Ejecute dps address> (Dirección dps<) para ver la pila de asignación.
- Parámetro 3 - Dirección del nombre dll del propietario. Ejecute du <address> para leer el nombre del archivo DLL.
- Parámetro 4 - Base del archivo dll del propietario. Ejecute .reload <dll_name> = <address> para volver a cargar el archivo DLL del propietario. Use "lm" para obtener más información sobre los módulos cargados y descargados.
- Capa de prueba: Fuga
- Id. de detención: REGISTRO
- Código de detención: 0x902
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se ha filtrado una reserva virtual.
Causa probableEsta detención se genera si el archivo DLL del propietario de la reserva virtual se ha descargado dinámicamente mientras posee recursos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección de reserva filtrada.
- Parámetro 2 - Dirección al seguimiento de la pila de asignación. Ejecute dps address> (Dirección dps<) para ver la pila de asignación.
- Parámetro 3 - Dirección del nombre dll del propietario. Ejecute du <address> para leer el nombre del archivo DLL.
- Parámetro 4 - Base del archivo dll del propietario. Ejecute .reload <dll_name> = <address> para volver a cargar el archivo DLL del propietario. Use "lm" para obtener más información sobre los módulos cargados y descargados.
- Capa de prueba: Fuga
- Id. de detención: VIRTUAL_RESERVATION
- Código de detención: 0x903
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se filtró un BSTR.
Causa probableEsta detención se genera si el archivo DLL del propietario de SysString se ha descargado dinámicamente mientras posee recursos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección del BSTR filtrado. Ejecute !heap -p -a <address> para obtener información adicional sobre la asignación.
- Parámetro 2 - Dirección al seguimiento de la pila de asignación. Ejecute dps address> (Dirección dps<) para ver la pila de asignación.
- Parámetro 3 - Dirección del nombre dll del propietario. Ejecute du <address> para leer el nombre del archivo DLL.
- Parámetro 4 - Base del archivo dll del propietario. Ejecute .reload <dll_name> = <address> para volver a cargar el archivo DLL del propietario. Use "lm" para obtener más información sobre los módulos cargados y descargados.
- Capa de prueba: Fuga
- Id. de detención: SYSSTRING
- Código de detención: 0x904
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
No se ha registrado una notificación de energía.
Causa probableEsta detención se genera si el archivo DLL registrado para la notificación de energía y se descargó dinámicamente sin anular el registro.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección del registro de notificaciones de energía.
- Parámetro 2 - Dirección al seguimiento de la pila de registro. Ejecute dps address> (Dirección dps<) para ver la pila de asignación.
- Parámetro 3 - Dirección del nombre dll del propietario. Ejecute du <address> para leer el nombre del archivo DLL.
- Parámetro 4 - Base del archivo dll del propietario. Ejecute .reload <dll_name> = <address> para volver a cargar el archivo DLL del propietario. Use "lm" para obtener más información sobre los módulos cargados y descargados.
- Capa de prueba: Fuga
- Id. de detención: POWER_NOTIFICATION
- Código de detención: 0x905
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Se ha filtrado una asignación COM.
Causa probableEsta detención se genera si el archivo DLL del propietario de la asignación COM se descargó dinámicamente mientras posee recursos.
Información mostrada por el Comprobador de aplicaciones- Parámetro 1 - Dirección de la asignación COM filtrada. Ejecute !heap -p -a <address> para obtener información adicional sobre la asignación.
- Parámetro 2 - Dirección al seguimiento de la pila de asignación. Ejecute dps address> (Dirección dps<) para ver la pila de asignación.
- Parámetro 3 - Dirección del nombre dll del propietario. Ejecute du <address> para leer el nombre del archivo DLL.
- Parámetro 4 - Base del archivo dll del propietario. Ejecute .reload <dll_name> = <address> para volver a cargar el archivo DLL del propietario. Use "lm" para obtener más información sobre los módulos cargados y descargados.
- Capa de prueba: Fuga
- Id. de detención: COM_ALLOCATION
- Código de detención: 0x906
- Severidad: Error
- Error único:
- Informe de errores: Quebrar
- Inicie sesión en el archivo: Sí
- Cree el backtrace: Sí
Véase también
Comprobador de aplicaciones: códigos de detención y definiciones
Comprobador de aplicaciones: información general
Comprobador de aplicaciones: características
Comprobador de aplicaciones: pruebas de aplicaciones
Comprobador de aplicaciones: pruebas dentro del comprobador de aplicaciones
Comprobador de aplicaciones: depuración de las paradas del comprobador de aplicaciones