Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Ebben a tesztkészletben a következő stopkódok találhatók.
Veszélyes hívás a TerminateThread felé.
Valószínű okEz a leállítás akkor jön létre, ha egy szál (a szálazonosító paraméter1) explicit módon leáll a TerminateThread használatával. Ez a függvény nagyon veszélyes, mert adatsérülést és holtpontot okoz (az MSDN-nek megfelelően).
Az Application Verifier által megjelenített információk- 1 . paraméter- A Terminatethread hívójának szálazonosítója.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Veszélyes
- Leállítás azonosítója: TERMINATE_THREAD_CALL
- Kód leállítása: 0x100
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Lehetséges verem túlcsordulása kevés memória esetén.
Valószínű okEz a leállítás akkor jön létre, ha egy szál kezdeti verem véglegesítési mérete olyan, hogy a verem túlcsordulása alacsony memóriaállapotban is létrejön, ha a verem nem bővíthető.
Az Application Verifier által megjelenített információk- 1 . paraméter- Nincs használatban.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Veszélyes
- Leállítás azonosítója: STACK_OVERFLOW
- Kód leállítása: 0x101
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Az ExitProcess hívása közben több szál is fut.
Valószínű okEz a leállítás akkor jön létre, ha egy szál meghívja az ExitProcess-et, miközben több szál fut. Ilyen esetben a rendszer minden szálhoz meghívja a belső TerminateThread parancsot, és ez holtpontokat vagy adatsérüléseket okozhat.
Az Application Verifier által megjelenített információk- 1 . paraméter- Futó szálak száma.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Veszélyes
- Leállítás azonosítója: INVALID_EXIT_PROCESS_CALL
- Kód leállítása: 0x102
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A LoadLibrary meghívása a DllMain alatt történik.
Valószínű okEz a leállítás akkor jön létre, ha a DllMain kódja meghívja a LoadLibraryt vagy a FreeLibaryt. Ez az MSDN által tiltott viselkedés.
Az Application Verifier által megjelenített információk- 1 . paraméter- DLL-név (a memóriakép a du használatával).
- 2 . paraméter- Dll alapcím.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Veszélyes
- Leállítás azonosítója: INVALID_LOAD_LIBRARY_CALL
- Kód leállítása: 0x103
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A FreeLibrary meghívása a DllMain alatt történik.
Valószínű okEz a leállítás akkor jön létre, ha a DllMain kódja meghívja a LoadLibraryt vagy a FreeLibaryt. Ez az MSDN által tiltott viselkedés.
Az Application Verifier által megjelenített információk- 1 . paraméter- DLL-név (a memóriakép a du használatával).
- 2 . paraméter- Dll alapcím.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Veszélyes
- Leállítás azonosítója: INVALID_FREE_LIBRARY_CALL
- Kód leállítása: 0x104
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A SetProcessWorkingSetSize neve MinimumWorkingSetSize = 0xFFFFFFFF.
Valószínű okHasználja a MinimumWorkingSetSize = (SIZE_T) -1 függvényt.
Az Application Verifier által megjelenített információk- 1 . paraméter- Nincs használatban.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Veszélyes
- Leállítás azonosítója: INVALID_MINIMUM_PROCESS_WORKING_SIZE
- Kód leállítása: 0x105
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A SetProcessWorkingSetSize neve MaximumWorkingSetSize = 0xFFFFFFFF.
Valószínű okHasználja a MaximumWorkingSetSize = (SIZE_T) -1 függvényt.
Az Application Verifier által megjelenített információk- 1 . paraméter- Nincs használatban.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Veszélyes
- Leállítás azonosítója: INVALID_MAXIMUM_PROCESS_WORKING_SIZE
- Kód leállítása: 0x106
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A SetProcessWorkingSetSizeEx neve MinimumWorkingSetSize = 0xFFFFFFFF.
Valószínű okHasználja a MinimumWorkingSetSize = (SIZE_T) -1 függvényt.
Az Application Verifier által megjelenített információk- 1 . paraméter- Nincs használatban.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Veszélyes
- Leállítás azonosítója: INVALID_MINIMUM_PROCESS_WORKING_SIZE_EX
- Kód leállítása: 0x107
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A SetProcessWorkingSetSizeEx neve MaximumWorkingSetSize = 0xFFFFFFFF.
Valószínű okHasználja a MaximumWorkingSetSize = (SIZE_T) -1 függvényt.
Az Application Verifier által megjelenített információk- 1 . paraméter- Nincs használatban.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Veszélyes
- Leállítás azonosítója: INVALID_MAXIMUM_PROCESS_WORKING_SIZE_EX
- Kód leállítása: 0x108
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A szál nem rendelkezhet kritikus szakaszsal.
Valószínű okEz a leállítás akkor jön létre, ha egy szál (a szálazonosító paraméter1) leáll, fel van függesztve, vagy olyan állapotban van (a munkaszál befejezte a munkaelemet), amelyben nem tud kritikus szakaszt tárolni. Az aktuális szál a bűnös. A hibakereséshez használja a következő hibakereső parancsokat:
- kb – az aktuális verem nyomkövetésének lekéréséhez. Ha az aktuális szál a kritikus szakasz tulajdonosa, valószínűleg az ExitThreadot hívja meg. A kilépés előtt az aktuális szálnak ki kellett volna szabadítania a kritikus szakaszt. Ha az aktuális szál a TerminateThread vagy a SuspendThread meghívását használja, akkor nem szabad ezt megtennie egy kritikus szakaszt tartalmazó szál esetében.
- !cs -s <paraméter> – a kritikus szakasz adatainak memóriaképe.
- ln <parameter2> – a kritikus szakasz címéhez közeli szimbólumok megjelenítéséhez. Ez segít azonosítani a kiszivárgott kritikus szakaszt.
- dps <parameter4> – a kritikus szakasz inicializálásának veremkövetőjének kiírása.
- 1 . paraméter- Szálazonosító.
- 2 . paraméter- Kritikus szakasz címe.
- 3 . paraméter- Kritikus szakasz hibakeresési információcíme.
- 4 . paraméter- Kritikus szakasz inicializálási veremének nyomkövetése.
- Tesztréteg: Zárak
- Leállítás azonosítója: EXIT_THREAD_OWNS_LOCK
- Kód leállítása: 0x200
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Aktív kritikus szakaszt tartalmazó DLL eltávolítása.
Valószínű okEz a leállítás akkor jön létre, ha a DLL-nek van egy kritikus szakaszt tartalmazó globális változója, és a DLL törlődik, de a kritikus szakasz nem lett törölve. A hibakereséshez használja a következő hibakereső parancsokat:
- du <parameter3> – a bűnös DLL nevének memóriaképe.
- .reload dllname vagy .reload dllname = <parameter4> – az adott DLL szimbólumainak újratöltéséhez.
- !cs -s <paraméter1> – a kritikus szakasz adatainak memóriaképe.
- ln <parameter1> – a kritikus szakasz címéhez közeli szimbólumok megjelenítéséhez. Ez segít azonosítani a kiszivárgott kritikus szakaszt.
- dps <parameter2> – a kritikus szakasz inicializálásához szükséges verem nyomkövetésének memóriaképe.
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Kritikus szakasz inicializálási veremének nyomkövetése.
- 3 . paraméter- DLL-névcím.
- 4 . paraméter- DLL alapcím.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_IN_UNLOADED_DLL
- Kód leállítása: 0x201
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Aktív kritikus szakaszt tartalmazó halomblokk felszabadítása.
Valószínű okEz a leállítás akkor jön létre, ha egy halomfoglalás kritikus szakaszt tartalmaz, a foglalás felszabadul, és a kritikus szakaszt nem törölték. A hibakereséshez használja a következő hibakereső parancsokat:
- !cs -s <paraméter1> – a kritikus szakasz adatainak memóriaképe.
- ln <parameter1> – a kritikus szakasz címéhez közeli szimbólumok megjelenítéséhez. Ez segít azonosítani a kiszivárgott kritikus szakaszt.
- dps <parameter2> – a kritikus szakasz inicializálásához szükséges verem nyomkövetésének memóriaképe.
- < a 3>. paraméter és <a 4>. paraméter segíthet megérteni a halomblokk lefoglalásának helyét (a foglalás mérete valószínűleg jelentős).
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Kritikus szakasz inicializálási veremének nyomkövetése.
- 3 . paraméter- Halomterület címe.
- 4 . paraméter- Halomblokk mérete.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_IN_FREED_HEAP
- Kód leállítása: 0x202
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Dupla inicializált vagy sérült kritikus szakasz.
Valószínű okEz a leállítás általában akkor jön létre, ha egy kritikus szakaszt több alkalommal inicializáltak. Ebben az esetben a 3. paraméter és a 4. paraméter két inicializálás veremkövetési címe. Máskor ezt a leállást akkor lehet elérni, ha a kritikus szakasz vagy a hibakeresési információs struktúra sérült. Ebben a második esetben lehetséges, hogy a 3. és a 4. paraméter érvénytelen és haszontalan. A hibakereséshez a következőt kell elvégeznie:
- !cs -s -d <paraméter2> – a kritikus szakasz adatainak memóriaképe.
- ln <parameter1> – a kritikus szakasz címéhez közeli szimbólumok megjelenítéséhez. Ez segíthet azonosítani a kritikus szakaszt, ha ez egy globális változó.
- dps <parameter3> és dps <parameter4> – a kritikus szakasz inicializálásához használt két kódútvonal azonosítása.
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Az aktív listában található hibakeresési információs struktúra címe.
- 3 . paraméter- Az első inicializálási verem nyomkövetése.
- 4 . paraméter- Második inicializálási verem nyomkövetése.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_DOUBLE_INITIALIZE
- Kód leállítása: 0x203
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Szabad memória, amely egy aktív kritikus szakaszt tartalmaz.
Valószínű okEz a leállítás akkor jön létre, ha a kritikus szakaszt tartalmazó memória felszabadult, de a kritikus szakaszt nem törölték a DeleteCriticalSection használatával. A hibakereséshez használja a következő hibakereső parancsokat:
- !cs -s -d <paraméter2> – a kritikus szakasz adatainak memóriaképe.
- dps <parameter3> – a kritikus szakasz inicializálásának kódútvonalának azonosítása.
A zárolás-ellenőrző a legtöbb esetben azonnal észleli a halomfoglalásban, a DLL-tartományban, a virtuális memórialefoglalásban vagy a MapViewOfFile által leképezett memóriatartományban lévő kritikus szakaszokat, és ezekben az esetekben különböző leállást ad ki. Tehát nagyon kevés eset maradt a hitelesítő leálláshoz. A zárolásnak kernel módú kóddal szabadított memóriatartományban kell lennie, vagy olyan API-k, mint például a VirtualFreeEx által felszabadított keresztfolyamat. Ez a leállítás általában akkor jelenik meg, ha egy korábbi leállást (például LOCK_IN_FREED_HEAP vagy LOCK_IN_UNLOADED_DLL) a hibakereső konzolon a "g" gombra kattintva folytatta.
Az Application Verifier által megjelenített információk- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Kritikus szakasz hibakeresési információcíme.
- 3 . paraméter- Kritikus szakasz inicializálási veremének nyomkövetése.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_IN_FREED_MEMORY
- Kód leállítása: 0x204
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Sérült kritikus szakasz.
Valószínű okEz a leállítás akkor jön létre, ha a kritikus szakasz DebugInfo mezője felszabadított memóriára mutat. Általában egy másik érvényes DebugInfo-struktúra található az aktív kritikus szakaszlistában. Sérülés nélkül a két mutatónak azonosnak kell lennie. A hibakereséshez használja a következő hibakereső parancsokat:
- !cs -s -d <paraméter3> – az aktív listában található hibakeresési információs struktúra aktuális tartalma alapján adja meg a kritikus szakasz adatait (ez a struktúra ritkán sérült, ezért általában ezek az információk megbízhatóak).
- !cs -s <paraméter1> – a kritikus szakasz szerkezetének aktuális tartalma alapján memóriaképet ad erről a kritikus szakaszról (a struktúra már sérült, ezért néha ez az információ NEM megbízható).
- dps <parameter4> – a kritikus szakasz inicializálásának kódútvonalának azonosítása. Adja meg a kritikus szakaszt az 1. címparaméternél , és keresse meg a sérülési mintát. Az ntdll.dl megfelelő szimbólumaival a következő parancsokat használhatja:
- dt ntdll!_RTL_CRITICAL_SECTION LOCK_ADDRESS
- dt ntdll!_RTL_CRITICAL_SECTION_DEBUG DEBUG_ADDRESS
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- A kritikus szakasz hibakeresési információinak címe érvénytelen.
- 3 . paraméter- Az aktív listában található hibakeresési információk címe.
- 4 . paraméter- Inicializálási verem nyomkövetése.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_CORRUPTED
- Kód leállítása: 0x205
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Érvénytelen kritikus szakasztulajdonosi szál.
Valószínű okEz a leállítás akkor jön létre, ha a tulajdonos szálazonosítója érvénytelen az aktuális környezetben. A hibakereséshez a következőt kell elvégeznie:
- !cs -s <paraméter1> – a kritikus szakasz adatainak memóriaképe.
- ln <parameter1> – a kritikus szakasz címéhez közeli szimbólumok megjelenítéséhez. Ez segít azonosítani a kritikus szakaszt.
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Tulajdonosi szál.
- 3 . paraméter- Várható tulajdonosi szál.
- 4 . paraméter- Kritikus szakasz hibakeresési információcíme.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_INVALID_OWNER
- Kód leállítása: 0x206
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Érvénytelen kritikus szakasz rekurziós száma.
Valószínű okEz a leállítás akkor jön létre, ha a kritikus szakaszstruktúra rekurziószámmezője érvénytelen az aktuális környezetben. A hibakereséshez a következőt kell elvégeznie:
- !cs -s <paraméter1> – a kritikus szakasz adatainak memóriaképe.
- ln <parameter1> – a kritikus szakasz címéhez közeli szimbólumok megjelenítéséhez. Ez segít azonosítani a kritikus szakaszt.
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Rekurziós szám.
- 3 . paraméter- Várható rekurziós szám.
- 4 . paraméter- Kritikus szakasz hibakeresési információcíme.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_INVALID_RECURSION_COUNT
- Kód leállítása: 0x207
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Kritikus szakasz törlése érvénytelen zárolási számmal.
Valószínű okEz a leállítás akkor jön létre, ha egy kritikus szakasz egy szál tulajdonában van, ha törölték, vagy ha a kritikus szakasz nem inicializálódott. A hibakereséshez a következőt kell elvégeznie:
- !cs -s <paraméter1> – a kritikus szakasz adatainak memóriaképe. Ha a tulajdonosi szál 0, a kritikus szakasz nincs inicializálva.
- ln <parameter1> – a kritikus szakasz címéhez közeli szimbólumok megjelenítéséhez. Ez segít azonosítani a kritikus szakaszt.
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Zárolások száma.
- 3 . paraméter- A zárolás várható száma.
- 4 . paraméter- Tulajdonosi szál.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_INVALID_LOCK_COUNT
- Kód leállítása: 0x208
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A kritikus szakaszt túlengedték vagy sérültek.
Valószínű okEz a leállítás akkor jön létre, ha egy kritikus szakasz többször jelenik meg, mint az aktuális szál. A hibakereséshez a következőt kell elvégeznie:
- !cs -s <paraméter1> – a kritikus szakasz adatainak memóriaképe.
- !cs -s -d <paraméter4> – a kritikus szakasz adatainak memóriaképe.
- ln <parameter1> – a kritikus szakasz címéhez közeli szimbólumok megjelenítéséhez. Ez segít azonosítani a kritikus szakaszt.
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Zárolások száma.
- 3 . paraméter- A zárolás várható száma.
- 4 . paraméter- Kritikus szakasz hibakeresési információcíme.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_OVER_RELEASED
- Kód leállítása: 0x209
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A kritikus szakasz nincs inicializálva.
Valószínű okEz a leállítás akkor jön létre, ha egy kritikus szakaszt inicializálás vagy törlés nélkül használnak. A hibakereséshez a következőt kell elvégeznie:
- ln <parameter1> – a kritikus szakasz címéhez közeli szimbólumok megjelenítéséhez. Ez segít azonosítani a kritikus szakaszt.
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Kritikus szakasz hibakeresési információcíme.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_NOT_INITIALIZED
- Kód leállítása: 0x210
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A kritikus szakasz már inicializálva van.
Valószínű okEz a leállítás akkor jön létre, ha az aktuális szál újrainicializál egy kritikus szakaszt. A hibakereséshez a következőt kell elvégeznie:
- !cs -s <paraméter1> vagy !cs -s -d paraméter2 – a kritikus szakasz adatainak memóriaképe.
- ln <parameter1> – a kritikus szakasz címéhez közeli szimbólumok megjelenítéséhez. Ez segíthet azonosítani a kritikus szakaszt, ha ez egy globális változó.
- dps <paraméter3> – a kritikus szakasz első inicializálásának kódútvonalának azonosítása.
- kb – az aktuális veremkövetés megjelenítéséhez, amely újraincializálja ezt a kritikus szakaszt.
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Kritikus szakasz hibakeresési információcíme.
- 3 . paraméter- Az első inicializálási verem nyomkövetése. A dps használatával memóriaképet ad meg, ha nem NULL
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_ALREADY_INITIALIZED
- Kód leállítása: 0x211
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Aktív kritikus szakaszt tartalmazó virtuális memória felszabadítása.
Valószínű okEz a leállítás akkor jön létre, ha az aktuális szál meghívja a VirtualFreet egy aktív kritikus szakaszt tartalmazó memóriablokkon. Az alkalmazásnak előbb meg kell hívnia a DeleteCriticalSection parancsot ezen a kritikus szakaszon, mielőtt felszabadítja ezt a memóriát.
- kb – az aktuális verem nyomkövetésének megjelenítéséhez, amely meghívja a VirtualFree-t. A valószínű bűnös az a DLL, amely VirtualFree-t hív.
- !cs -s <paraméter1> – a kritikus szakasz adatainak memóriaképe.
- dps <parameter2> – a kritikus szakasz inicializálásának kódútvonalának azonosítása.
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Kritikus szakasz inicializálási veremének nyomkövetése.
- 3 . paraméter- Memóriablokk címe.
- 4 . paraméter- Memóriablokk mérete.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_IN_FREED_VMEM
- Kód leállítása: 0x212
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Aktív kritikus szakaszt tartalmazó memóriaterület kibontása.
Valószínű okEz a leállítás akkor jön létre, ha az aktuális szál meghívja a UnmapViewOfFile fájlt egy aktív kritikus szakaszt tartalmazó memóriablokkon. Az alkalmazásnak meg kell hívnia a DeleteCriticalSection-et ezen a kritikus szakaszon, mielőtt feloldja ezt a memóriát.
- kb – a UnmapViewOfFile meghívására használt jelenlegi veremkövetés megjelenítéséhez. A valószínű bűnös az UnmapViewOfFile-t hívó DLL.
- !cs -s <paraméter1> – a kritikus szakasz adatainak memóriaképe.
- dps <parameter2> – a kritikus szakasz inicializálásának kódútvonalának azonosítása.
- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Kritikus szakasz inicializálási veremének nyomkövetése.
- 3 . paraméter- Memóriablokk címe.
- 4 . paraméter- Memóriablokk mérete.
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_IN_UNMAPPED_MEM
- Kód leállítása: 0x213
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Az aktuális szál nem rendelkezik kritikus szakaszokkal.
Valószínű okEz a leállítás akkor jön létre, ha az aktuális szál meghívja a LeaveCriticalSection-et, de a belső ellenőrző könyvelés szerint nem rendelkezik kritikus szakaszokkal. Ha a 2. paraméter nulla, valószínűleg ez egy hiba az aktuális szálban. Vagy megpróbál elhagyni egy kritikus szakaszt, amelyet nem adott meg, vagy lehet, hogy többször hívja meg a LeaveCriticalSection-et, mint amennyit enterCriticalSection-nek hív ugyanahhoz a kritikus szakaszhoz. Ha a 2. paraméter nem nulla (negatív egész szám), akkor a belső hitelesítő adatstruktúrák valószínűleg sérültek.
Az Application Verifier által megjelenített információk- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Az aktuális szál által birtokolt kritikus szakaszok száma.
- 3 . paraméter- Nincs használatban
- 4 . paraméter- Nincs használatban
- Tesztréteg: Zárak
- Leállítás azonosítója: THREAD_NOT_LOCK_OWNER
- Kód leállítása: 0x214
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Egy másik DLL számára privát kritikus szakasz használata.
Valószínű okEz a leállítás akkor jön létre, ha az aktuális szál egy privát zárolást próbál használni, amely egy másik DLL-ben található. Például a.dll megpróbál egy kritikus szakaszt megadni, amely ntdll.dllbelül van definiálva. A privát zárolások nem használhatók a DLL-ek között.
Az Application Verifier által megjelenített információk- 1 . paraméter- Kritikus szakasz címe.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban
- 4 . paraméter- Nincs használatban
- Tesztréteg: Zárak
- Leállítás azonosítója: LOCK_PRIVATE
- Kód leállítása: 0x215
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Az SRW-zárolás nincs inicializálva.
Valószínű okEz a leállítás akkor jön létre, ha egy szál nem inicializált SRW-zárolást (Param1) próbál használni. A hibakereséshez használja a "kb" parancsot az aktuális verem nyomkövetésének lekéréséhez. Itt használja az SRW-zárolást. Használat előtt inicializálni kell az SRW-zárolást az InitializeSRWLock használatával.
Az Application Verifier által megjelenített információk- 1 . paraméter- SRW-zárolás
- 2 . paraméter- Nincs használatban
- 3 . paraméter- Nincs használatban
- 4 . paraméter- Nincs használatban
- Tesztréteg: SRWLock
- Leállítás azonosítója: NOT_INITIALIZED
- Kód leállítása: 0x250
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Az SRW-zárolás már inicializálva van.
Valószínű okEz a leállítás akkor jön létre, ha az SRW-zárolás (Param1) újra inicializálása folyamatban van. Ha az SRW-zárolást más szálak aktívan használják, a zárolás újbóli inicializálása kiszámíthatatlan viselkedést eredményez az alkalmazás számára, beleértve a lefagyást és az összeomlásokat. Az inicializálási verem nyomkövetése beolvasást mutathat, ha az SRW-zárolás statikusan inicializálódott.
- kb – az aktuális verem nyomkövetésének lekéréséhez. Itt inicializálják újra az SRW-zárolást.
- dps <paraméter3> – az SRW-zárolás inicializálási verem nyomkövetésének lekéréséhez. Ez a veremkövetés beolvasást jeleníthet meg, ha a zárolás statikus inicializálva lett.
- 1 . paraméter- SRW-zárolás
- 2 . paraméter- Az SRW-zárolást inicializáló szál ThreadId azonosítója.
- 3 . paraméter- Az inicializálási verem nyomkövetésének címe. A dps-címmel <> megtekintheti, hogy hol inicializálták az SRW-zárolást.
- 4 . paraméter- Nincs használatban
- Tesztréteg: SRWLock
- Leállítás azonosítója: ALREADY_INITIALIZED
- Kód leállítása: 0x251
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Nem egyező Acquire-Release az SRW-zároláson.
Valószínű okEz a leállítás akkor jön létre, ha az SRW-zárolás (Param1) kiadása helytelen kiadási API-val történik. Ha az SRW-zárolást megosztott hozzáféréshez szerezték be, és a kizárólagos kiadási API használatával adták ki, vagy az SRW-zárolást kizárólagos hozzáférésre szerezték be, és a megosztott kiadási API-val adták ki. Ez az alkalmazás előre nem látható viselkedését eredményezheti, beleértve a lefagyást és az összeomlást.
- kb – az aktuális verem nyomkövetésének lekéréséhez. Itt oldják fel az SRW-zárolást a rossz API használatával.
- dps <parameter3> – az SRW-zárolás lekéréséhez szerezze be a verem nyomkövetését.
- 1 . paraméter- SRW-zárolás
- 2 . paraméter- Az SRW-zárolást beszerző szál szálazonosítója.
- 3 . paraméter- A beolvasási verem nyomkövetésének címe. A dps-címmel <> megtekintheti, hogy hol szerezte be az SRW-zárolást.
- 4 . paraméter- Nincs használatban
- Tesztréteg: SRWLock
- Leállítás azonosítója: MISMATCHED_ACQUIRE_RELEASE
- Kód leállítása: 0x252
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Az SRW-zárolást ugyanaz a szál rekurzívan szerzi be.
Valószínű okEz a leállítás akkor jön létre, ha az SRW-zárolást (Param1) ugyanaz a szál rekurzívan szerzi be. Ez holtpontot eredményez, és a szál határozatlan időre blokkolni fog. Az SRW-zárolás kizárólagos módban történő rekurzív beszerzése holtpontot okoz. A megosztott módban lévő SRW-zárolás rekurzív beszerzése holtpontot okoz, ha egy szál kizárólagos hozzáférésre vár. Vegye figyelembe az alábbi példát: - Az A szál megosztott módban szerzi be az SRW-zárolást – A B. szál kizárólagos módban próbálja meg az SRW-zárolást visszavonni, és várakozik – Az A szál rekurzív módon próbálja megszerezni az SRW-zárolást. Ez mindaddig sikeres lesz, amíg nincs kizárólagos pincér (ebben az esetben B). Mivel az SRW-zárolások nem rendelkeznek írói éhezéssel, az A szál a B szál mögött várakozik. Most a B szál az A szálra vár, amely a B szálra vár, és körkörös várakozást okoz, és így holtpontot okoz.
- kb – az aktuális verem nyomkövetésének lekéréséhez. Itt történik az SRW-zárolás rekurzív beszerzése.
- dps <parameter2> – az első beolvasás veremkövetésének lekéréséhez.
- 1 . paraméter- SRW-zárolás
- 2 . paraméter- Az első beolvasási verem nyomkövetésének címe. A dps-címmel <> megtekintheti, hogy hol szerezte be az SRW-zárolást.
- 3 . paraméter- Nincs használatban
- 4 . paraméter- Nincs használatban
- Tesztréteg: SRWLock
- Leállítás azonosítója: RECURSIVE_ACQUIRE
- Kód leállítása: 0x253
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A kilépő vagy leállított szál SRW-zárolással rendelkezik.
Valószínű okEz a leállítás akkor jön létre, ha az SRW-zárolást (Param1) birtokló szál (Param2) kilép vagy leáll. Ez árva SRW-zárolást eredményez, és a zárolást megszerezni próbáló szálak határozatlan időre blokkolni fognak.
- kb – az aktuális verem nyomkövetésének lekéréséhez. Itt lép ki vagy fejeződik be a szál.
- dps <parameter3> – az SRW-zárolás lekéréséhez szerezze be a verem nyomkövetését.
- 1 . paraméter- SRW-zárolás
- 2 . paraméter- A kilépő vagy leállított szál szálazonosítója.
- 3 . paraméter- A beolvasási verem nyomkövetésének címe. A dps-címmel <> megtekintheti, hogy hol szerezte be az SRW-zárolást.
- 4 . paraméter- Nincs használatban
- Tesztréteg: SRWLock
- Leállítás azonosítója: EXIT_THREAD_OWNS_LOCK
- Kód leállítása: 0x254
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A feloldott SRW-zárolást ez a szál nem szerezte be.
Valószínű okEz a leállítás akkor jön létre, ha az SRW-zárolást (Param1) az a szál (Param2) oldja fel, amely nem szerezte be a zárolást. Ez olyan rossz programozási gyakorlatot jelent, amely nehezen érhető el, és az alkalmazás kiszámíthatatlan viselkedéséhez vezethet.
- kb – az aktuális verem nyomkövetésének lekéréséhez. Itt oldja fel a szál a nem beszerzett SRW-zárolást.
- dps <parameter4> – az SRW-zárolás lekéréséhez szerezze be a verem nyomkövetését.
- 1 . paraméter- SRW-zárolás
- 2 . paraméter- Aktuális szálazonosító.
- 3 . paraméter- Az SRW-zárolást beszerző szál szálazonosítója.
- 4 . paraméter- A beolvasási verem nyomkövetésének címe. A dps-címmel <> megtekintheti, hogy hol szerezte be az SRW-zárolást.
- Tesztréteg: SRWLock
- Leállítás azonosítója: INVALID_OWNER
- Kód leállítása: 0x255
- Súlyosság: Figyelmeztetés
- Egyszeri hiba:
- Hibajelentés: Egyik sem
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A felszabadított memória aktív SRW-zárolást tartalmaz.
Valószínű okEz a leállítás akkor jön létre, ha a felszabadított memóriacím (Param1) aktív SRW-zárolást tartalmaz, amely még használatban van. Ez az alkalmazás kiszámíthatatlan viselkedését eredményezheti, beleértve az összeomlásokat és a lefagyást.
- kb – az aktuális verem nyomkövetésének lekéréséhez. Itt szabadítjuk fel a memóriát, amely aktív SRW-zárolást tartalmaz.
- dps <parameter4> – az SRW-zárolás lekéréséhez szerezze be a verem nyomkövetését.
- 1 . paraméter- SRW-zárolás
- 2 . paraméter- A felszabadított memória címe.
- 3 . paraméter- Az SRW-zárolást beszerző szál szálazonosítója.
- 4 . paraméter- A beolvasási verem nyomkövetésének címe. A dps-címmel <> megtekintheti, hogy hol szerezte be az SRW-zárolást.
- Tesztréteg: SRWLock
- Leállítás azonosítója: IN_FREED_MEMORY
- Kód leállítása: 0x256
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A kiürített DLL aktív SRW-zárolást tartalmaz.
Valószínű okEz a leállítás akkor jön létre, ha a kiürített DLL (Param2) aktív SRW-zárolást (Param1) tartalmaz, amely még használatban van. Ez az alkalmazás kiszámíthatatlan viselkedését eredményezheti, beleértve az összeomlásokat és a lefagyást.
- kb – az aktuális verem nyomkövetésének lekéréséhez. Itt távolítja el a DLL-t, amely aktív SRW-zárolást tartalmaz.
- du <parameter2> – a kiürített DLL nevének megkereséséhez.
- dps <parameter4> – az SRW-zárolás lekéréséhez szerezze be a verem nyomkövetését.
- 1 . paraméter- SRW-zárolás
- 2 . paraméter- A kiürített DLL nevének címe. A név megtekintéséhez használja a du <címet> .
- 3 . paraméter- Az SRW-zárolást beszerző szál szálazonosítója.
- 4 . paraméter- A beolvasási verem nyomkövetésének címe. A dps-címmel <> megtekintheti, hogy hol szerezte be az SRW-zárolást.
- Tesztréteg: SRWLock
- Leállítás azonosítója: IN_UNLOADED_DLL
- Kód leállítása: 0x257
- Súlyosság: Figyelmeztetés
- Egyszeri hiba:
- Hibajelentés: Egyik sem
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Az SRW-zárolás leállítási útvonalon van beolvasva, ami lefagyást eredményezhet.
Valószínű okEz a leállítás akkor jön létre, ha egy SRW-zárolást (Param1) szerez be egy leállítási útvonalon. Az SRW-zárolások nem állnak le. Ha megpróbál beszerezni egy árva SRW-zárolást (a folyamat leállítása vagy valamilyen más ok miatt), lefagy. A ConditionVariableSRW hívása egy leállítási útvonalon szintén okozhatja ezt a hitelesítő leállást, mivel a zárolás ki van adva és beolvasva a hívás során. A hibakereséshez a következőt kell elvégeznie:
- kb – az aktuális verem nyomkövetésének lekéréséhez. Itt szerezik be az SRW-zárolást egy leállítási útvonalon.
- 1 . paraméter- SRW-zárolás
- 2 . paraméter- Nincs használatban
- 3 . paraméter- Nincs használatban
- 4 . paraméter- Nincs használatban
- Tesztréteg: SRWLock
- Leállítás azonosítója: ACQUIRE_ON_SHUTDOWN_PATH
- Kód leállítása: 0x258
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Érvénytelen kivétel a jelenlegi veremkövetéshez.
Valószínű okEz a leállítás akkor jön létre, ha a verem tetején lévő függvény érvénytelen leírót adott át a rendszer rutinjainak. Általában egy egyszerű kb-parancs megmutatja, hogy mi az átadott leíró értéke (az egyik paraméternek kell lennie – általában az első). Ha az érték null, akkor ez egyértelműen helytelen. Ha az érték rendben van, a !htrace hibakereső bővítményt kell használnia a leíró értékével kapcsolatos műveletek előzményeinek lekéréséhez. A legtöbb esetben a leíró értékét kell használni a lezárás után.
Az Application Verifier által megjelenített információk- 1 . paraméter- Kivételkód.
- 2 . paraméter- Kivételrekord. A .exr használatával jelenítheti meg.
- 3 . paraméter- Környezeti rekord. A .cxr használatával jelenítheti meg.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Kezeli
- Leállítás azonosítója: INVALID_HANDLE
- Kód leállítása: 0x300
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Az aktuális veremkövetéshez használt TLS-index érvénytelen.
Valószínű okEz a leállítás akkor jön létre, ha a verem tetején lévő függvény érvénytelen TLS-indexet adott át a TLS rendszer rutinjainak. Általában egy egyszerű kb-parancs megmutatja, hogy mi a baj. Itt általában az a hiba, hogy a TlsAlloc meghívása helyett egy TLS-index egy bizonyos értékét feltételezi. Ez akkor fordulhat elő, ha azt gondoljuk, hogy mindig N értéket kap, ezért nem kell meghívni a TlsAllocot, vagy gyakrabban egy nem inicializált változó miatt.
Az Application Verifier által megjelenített információk- 1 . paraméter- Érvénytelen TLS-index.
- 2 . paraméter- Az index várható alsó része.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Kezeli
- Leállítás azonosítója: INVALID_TLS_VALUE
- Kód leállítása: 0x301
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Érvénytelen paraméterek a WaitForMultipleObjects híváshoz.
Valószínű okEz a leállítás akkor jön létre, ha a WaitForMultipleObjects nevű verem tetején lévő függvény null értékkel jelenik meg a fogópontok tömbjének címeként, és a fogópontok száma nulla. Egy egyszerű kb-parancs megjeleníti az API-t helytelenül meghívó függvényt.
Az Application Verifier által megjelenített információk- 1 . paraméter- Az objektumkezelők vektorának címe.
- 2 . paraméter- Fogópontok száma.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Kezeli
- Leállítás azonosítója: INCORRECT_WAIT_CALL
- Kód leállítása: 0x302
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
PARAMÉTERként átadott NULL leíró. Érvényes leírót kell használni.
Valószínű okEz a leállítás akkor jön létre, ha a verem tetején lévő függvény null fogópontot adott át a rendszer rutinjainak.
Az Application Verifier által megjelenített információk- 1 . paraméter- Nincs használatban.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Kezeli
- Leállítás azonosítója: NULL_HANDLE
- Kód leállítása: 0x303
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Várakozás egy szálfogópontra a DllMainben.
Valószínű okEz a leállítás akkor jön létre, ha az aktuális szál jelenleg az aktuális folyamatban betöltött dllMain függvényén belül futtat kódot, és meghívja a WaitForSingleObject vagy a WaitForMultipleObjects parancsot, hogy várjon egy szálfogóponton ugyanabban a folyamatban. Ez valószínűleg holtponthoz vezetne, mert a menetfogantyú csak akkor lesz jelezve, ha a második szál kilép. Amikor a második szál meghívja az ExitThreadot, megpróbálja beszerezni a DLL-betöltő zárolását, majd meghívja a DllMain (DLL_THREAD_DETACH) elemet az aktuális folyamat összes DLL-jének. De a rakodózár az első szál tulajdonában van (az, amelyik a szálfogóponton várakozik), így a két szál holtpontra kerül.
Az Application Verifier által megjelenített információk- 1 . paraméter- Szálfogópont.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Kezeli
- Leállítás azonosítója: WAIT_IN_DLLMAIN
- Kód leállítása: 0x304
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Helytelen objektumtípus a leíróhoz.
Valószínű okEz a leállítás akkor jön létre, ha az aktuális szál egy olyan API-t hív meg, amely egy helytelen objektumtípusú objektumhoz fogóponttal rendelkezik. Például a SetEvent paraméterként való meghívása egy szemaphore-leíróval létrehozza ezt a leállítást. A hibakereséshez a következőt kell elvégeznie:
- kb – az aktuális verem nyomkövetésének megjelenítéséhez. A bűnös valószínűleg az a DLL, amely verifier.dll;
- du <parameter2> – a leíró tényleges típusának megjelenítéséhez. A leíró értéke paraméter1. A fenti példában ez a következő lesz: "Szemaphore".
- du <parameter3> – az API által várt objektumtípus megjelenítéséhez. A fenti példában ez a név a következő lesz: "Esemény".
- A !htrace <paraméter1> hasznos lehet, mert megjeleníti a fogópont legutóbbi megnyitási/záró műveleteinek veremkövetőjét.
- 1 . paraméter- Érték kezelése.
- 2 . paraméter- Objektumtípus neve. A du használata a megjelenítéshez
- 3 . paraméter- Várt objektumtípus neve. A du használata a megjelenítéshez
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Kezeli
- Leállítás azonosítója: INCORRECT_OBJECT_TYPE
- Kód leállítása: 0x305
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A nem felszabadított TLS-indexet lefoglaló DLL eltávolítása.
Valószínű okEz a leállítás akkor jön létre, ha a TLS-indexet lefoglaló DLL-et kiürítik a TLS-index felszabadítása előtt. A hibakereséshez a következőt kell elvégeznie:
- du <parameter3> – a bűnös DLL nevének megjelenítése;
- .reload xxx.dll=<parameter4> – a bűnös DLL újratöltési szimbólumai (ha szükséges). xxx.dll a fenti lépésben megjelenített DLL neve;
- u <parameter2> – bontsa szét a TLS-t kiosztó kódot. Ennek arra a függvényre kell mutatnia, amely lefoglalta a TLS-t, de elfelejtette felszabadítani a DLL-fájl eltávolítása előtt.
- 1 . paraméter- TLS-index
- 2 . paraméter- A TLS-indexet lefoglaló kód címe.
- 3 . paraméter- DLL-névcím. Használja a du-t a memóriaképhez.
- 4 . paraméter- DLL alapcím.
- Tesztréteg: TLS
- Leállítás azonosítója: TLS_LEAK
- Kód leállítása: 0x350
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Sérült hitelesítő TLS-struktúra.
Valószínű okEz a leállítás akkor jön létre, ha a szál TLS-tárolóhelyeinek állapotának tárolására használt belső ellenőrző struktúrák sérültek. Ez valószínűleg a folyamat véletlenszerű sérülésének köszönhető.
Az Application Verifier által megjelenített információk- 1 . paraméter- TEB-cím.
- 2 . paraméter- Várt TEB-cím.
- 3 . paraméter- Szálazonosító.
- 4 . paraméter- Várt szálazonosító.
- Tesztréteg: TLS
- Leállítás azonosítója: CORRUPTED_TLS
- Kód leállítása: 0x351
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Érvénytelen TLS-index használata.
Valószínű okEz a leállítás akkor jön létre, ha érvénytelen TLS-indexet használ. A legtöbb esetben ennek az az oka, hogy a kód továbbra is ezt az indexet használja a TlsFree meghívásakor. Íme egy példa a szálláncszálra. T1: Dll-betöltések és TlsAlloc T1: Várólista-visszahívás T1: Kihagyott várakozási/visszavont visszahívási T1: TlsFree T2: Visszahívás fut és meghívja a TlsSetValue T1: Dll-kiürítéseket
Az Application Verifier által megjelenített információk- 1 . paraméter- TLS-index
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: TLS
- Leállítás azonosítója: INVALID_TLS_INDEX
- Kód leállítása: 0x352
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Virtuális memóriablokk felszabadítása érvénytelen mérettel vagy kezdőcímmel.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás-ellenőrző virtualFree- vagy DLL-eltávolítást észlel a memóriafoglalás érvénytelen kezdőcímével vagy méretével. DLL-kiürítés esetén ez valószínűleg memóriasérülést jelent a betöltött DLL-listában. A hibakereséshez tekintse meg az aktuális verem nyomkövetését és a felszabadítani kívánt memóriacímet és méretet, és próbálja meg megállapítani, hogy miért érvénytelenek.
Az Application Verifier által megjelenített információk- 1 . paraméter- Foglalási alapcím.
- 2 . paraméter- Memóriaterület mérete.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_FREEMEM
- Kód leállítása: 0x600
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Helytelen virtuális kiosztási hívás.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás hitelesítője érvénytelen kezdőcímmel vagy memóriafoglalási mérettel rendelkező VirtualAlloc-hívást észlel. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb) és a lefoglalni kívánt memóriacímet és méretet, és próbálja meg megállapítani, hogy miért érvénytelenek.
Az Application Verifier által megjelenített információk- 1 . paraméter- Mutató a foglalási alapcímre.
- 2 . paraméter- Mutató a memóriarégió méretére.
- 3 . paraméter- Nincs használatban
- 4 . paraméter- Nincs használatban
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_ALLOCMEM
- Kód leállítása: 0x601
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Helytelen térképnézet-hívás.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás-ellenőrző érvénytelen alapcímmel vagy a leképezés méretével rendelkező MapViewOfFile-hívást észlel. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb) és a leképezni kívánt memóriacímet és méretet, és próbálja meg megállapítani, hogy miért érvénytelenek.
Az Application Verifier által megjelenített információk- 1 . paraméter- Mutató az alapcím leképezéséhez.
- 2 . paraméter- Mutató a méret megtekintéséhez.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_MAPVIEW
- Kód leállítása: 0x602
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Érvénytelen cím ellenőrzése.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás hitelesítője érvénytelen címmel (például kernel módú címmel, normál felhasználói módú cím helyett) észlel egy IsBadXXXPtr-hívást a mintavételezendő memóriapufferhez. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb), és próbálja meg megállapítani, hogy az IsBadXXXPtr függvény hívója miért lett érvénytelen címmel. A cím sokszor egyszerű hamis, például nem inicializált mutató. Az MSDN-kódtár felsorol néhány okot arra vonatkozóan, hogy az alkalmazások miért nem használhatják az IsBadXXXPtr API-kat: Egy preemptív többfeladatos környezetben lehetséges, hogy egy másik szál megváltoztatja a folyamat hozzáférését a tesztelt memóriához. A potenciálisan érvénytelen mutatók elhalasztása letilthatja a verembővítést más szálakban. A vermet kimerítő szál, ha a verembővítés le lett tiltva, a szülőfolyamat azonnali leállását eredményezi, előugró hibaablak vagy diagnosztikai információ nélkül. A folyamat szálai várhatóan úgy működnek együtt, hogy az egyik ne szabadíthassa fel a memóriát, amire a másiknak szüksége van. A függvény használata nem zárja ki ennek szükségességét. Ha ez nem történik meg, az alkalmazás kiszámíthatatlan módon meghiúsulhat. Mindezek miatt azt javasoljuk, hogy soha ne használja ezeket az API-kat.
Az Application Verifier által megjelenített információk- 1 . paraméter- Kezdési cím.
- 2 . paraméter- Memóriablokk mérete.
- 3 . paraméter- Érvénytelen cím.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: PROBE_INVALID_ADDRESS
- Kód leállítása: 0x603
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Szabad memória próbae.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás-ellenőrző észlel egy IsBadXXXPtr-hívást egy ingyenes memóriafoglaláshoz. Ez nagyon rossz, mert lehetséges, hogy bizonyos más esetekben ezt a memóriát már felhasználták más foglalásokhoz. Mivel a jelenlegi kód elérési útja (kb) nem rendelkezik ezzel a memóriával, a végén megsérülhet valaki más memóriája, ami katasztrofális következményekkel járhat. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb), és próbálja meg meghatározni, hogy az IsBadXXXPtr függvény hívója miért lett szabad memóriát űzve. A cím lehet egyszerű hamis (például nem inicializált mutató), vagy esetleg már felszabadított memória. Ha a memóriát már felszabadította a VirtualFree vagy UnmapViewOfFile API-k egyike, a(z) "!avrf -vs -a paraméter3" megkeresi a címhez lefoglalt/felszabadított kódútvonalak veremnyomainak naplóját, és megjeleníti ezeket a veremnyomokat, ha elérhetők. Ez a memória felszabadító veremkövetet jelenhet meg. Gyakrabban előfordul, hogy a memória már felszabadított halomfoglalás. Ennek a lehetőségnek a ellenőrzéséhez a (!avrf -hp -a paraméter3) megkeresi az adott címet a halomra/halomra kiosztott/felszabadító kódútvonalak veremnyomainak naplóját, és megjeleníti ezeket a veremnyomokat, ha elérhetők. Az MSDN-kódtár felsorol néhány okot arra vonatkozóan, hogy az alkalmazások miért nem használhatják az IsBadXXXPtr API-kat: Egy preemptív többfeladatos környezetben lehetséges, hogy egy másik szál megváltoztatja a folyamat hozzáférését a tesztelt memóriához. A potenciálisan érvénytelen mutatók elhalasztása letilthatja a verembővítést más szálakban. A vermet kimerítő szál, ha a verembővítés le lett tiltva, a szülőfolyamat azonnali leállását eredményezi, előugró hibaablak vagy diagnosztikai információ nélkül. A folyamat szálai várhatóan úgy működnek együtt, hogy az egyik ne szabadíthassa fel a memóriát, amire a másiknak szüksége van. A függvény használata nem zárja ki ennek szükségességét. Ha ez nem történik meg, az alkalmazás kiszámíthatatlan módon meghiúsulhat. Mindezek miatt azt javasoljuk, hogy soha ne használja ezeket az API-kat.
Az Application Verifier által megjelenített információk- 1 . paraméter- Kezdési cím.
- 2 . paraméter- Memóriablokk mérete.
- 3 . paraméter- A szabad memória lap címe.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: PROBE_FREE_MEM
- Kód leállítása: 0x604
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Védőlap kikészítése.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás hitelesítője isBadXXXPtr-hívást észlel egy legalább egy GUARD_PAGE tartalmazó memóriafoglaláshoz. Ez nagyon rossz, mert nagyon lehetséges, hogy ez a GUARD_PAGE a szál aktuális veremének vége. Ahogy az MSDN-kódtárban is dokumentálta: A potenciálisan érvénytelen mutatók elhalasztása letilthatja a verembővítést más szálakban. A vermet kimerítő szál, ha a verembővítés le lett tiltva, a szülőfolyamat azonnali leállását eredményezi, előugró hibaablak vagy diagnosztikai információ nélkül. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb), és próbálja meg megállapítani, hogy az IsBadXXXPtr függvény hívója miért szúrt ki egy GUARD_PAGE. Az MSDN-kódtár felsorol néhány okot arra vonatkozóan, hogy az alkalmazások miért nem használhatják az IsBadXXXPtr API-kat: Egy preemptív többfeladatos környezetben lehetséges, hogy egy másik szál megváltoztatja a folyamat hozzáférését a tesztelt memóriához. A potenciálisan érvénytelen mutatók elhalasztása letilthatja a verembővítést más szálakban. A vermet kimerítő szál, ha a verembővítés le lett tiltva, a szülőfolyamat azonnali leállását eredményezi, előugró hibaablak vagy diagnosztikai információ nélkül. A folyamat szálai várhatóan úgy működnek együtt, hogy az egyik ne szabadíthassa fel a memóriát, amire a másiknak szüksége van. A függvény használata nem zárja ki ennek szükségességét. Ha ez nem történik meg, az alkalmazás kiszámíthatatlan módon meghiúsulhat. Mindezek miatt azt javasoljuk, hogy soha ne használja ezeket az API-kat.
Az Application Verifier által megjelenített információk- 1 . paraméter- Kezdési cím.
- 2 . paraméter- Memóriablokk mérete.
- 3 . paraméter- Az őrlap címe.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: PROBE_GUARD_PAGE
- Kód leállítása: 0x605
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
NULL-cím ellenőrzése.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás-ellenőrző null címmel rendelkező IsBadXXXPtr-hívást észlel. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb), és próbálja meg megállapítani, hogy az IsBadXXXPtr függvény hívója miért lett NULL-címmel. Ez általában annak a jele, hogy valaki nem ellenőrzi az egyik memóriafoglalási függvény visszatérési értékét. Az alábbi kód például helytelen:
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.
//
}
Ezt a kódot a következőképpen kell újraírni:
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.
//
}
Az MSDN-kódtár felsorol néhány okot arra vonatkozóan, hogy az alkalmazások miért nem használhatják az IsBadXXXPtr API-kat: Egy preemptív többfeladatos környezetben lehetséges, hogy egy másik szál megváltoztatja a folyamat hozzáférését a tesztelt memóriához. A potenciálisan érvénytelen mutatók elhalasztása letilthatja a verembővítést más szálakban. A vermet kimerítő szál, ha a verembővítés le lett tiltva, a szülőfolyamat azonnali leállását eredményezi, előugró hibaablak vagy diagnosztikai információ nélkül. A folyamat szálai várhatóan úgy működnek együtt, hogy az egyik ne szabadíthassa fel a memóriát, amire a másiknak szüksége van. A függvény használata nem zárja ki ennek szükségességét. Ha ez nem történik meg, az alkalmazás kiszámíthatatlan módon meghiúsulhat. Mindezek miatt azt javasoljuk, hogy soha ne használja ezeket az API-kat.
Az Application Verifier által megjelenített információk- 1 . paraméter- Nincs használatban.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: PROBE_NULL
- Kód leállítása: 0x606
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Érvénytelen kezdőcímmel vagy mérettel rendelkező memóriablokk próbae.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás hitelesítője érvénytelen indítási címmel (például kernel módú címmel, normál felhasználói módú cím helyett) vagy érvénytelen méretű IsBadXXXPtr-hívást észlel a mintavételezendő memóriapufferhez. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb), és próbálja meg megállapítani, hogy az IsBadXXXPtr függvény hívója miért lett érvénytelen címmel vagy mérettel. A cím vagy a méret sokszor egyszerű hamis, például nem nemi alapú változók. Az MSDN-kódtár felsorol néhány okot arra vonatkozóan, hogy az alkalmazások miért nem használhatják az IsBadXXXPtr API-kat: Egy preemptív többfeladatos környezetben lehetséges, hogy egy másik szál megváltoztatja a folyamat hozzáférését a tesztelt memóriához. A potenciálisan érvénytelen mutatók elhalasztása letilthatja a verembővítést más szálakban. A vermet kimerítő szál, ha a verembővítés le lett tiltva, a szülőfolyamat azonnali leállását eredményezi, előugró hibaablak vagy diagnosztikai információ nélkül. A folyamat szálai várhatóan úgy működnek együtt, hogy az egyik ne szabadíthassa fel a memóriát, amire a másiknak szüksége van. A függvény használata nem zárja ki ennek szükségességét. Ha ez nem történik meg, az alkalmazás kiszámíthatatlan módon meghiúsulhat. Mindezek miatt azt javasoljuk, hogy soha ne használja ezeket az API-kat.
Az Application Verifier által megjelenített információk- 1 . paraméter- Kezdési cím.
- 2 . paraméter- Memóriablokk mérete.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: PROBE_INVALID_START_OR_SIZE
- Kód leállítása: 0x607
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Érvénytelen mérettel vagy kezdőcímmel rendelkező DLL eltávolítása.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás-ellenőrző a DLL-memóriatartomány érvénytelen kezdőcímével vagy méretével rendelkező DLL-eltávolítást észlel. Ez valószínűleg memóriasérülést jelent a belső ntdll.dll betöltött DLL-listában.
Az Application Verifier által megjelenített információk- 1 . paraméter- DLL memóriabázis címe.
- 2 . paraméter- DLL memóriatartomány mérete.
- 3 . paraméter- DLL-névcím. Használja a du-t a memóriaképhez.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_DLL_RANGE
- Kód leállítása: 0x608
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Memóriablokk felszabadítása az aktuális szál veremcímtartományában.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás-ellenőrző észlel egy VirtualFree-et egy memóriablokkhoz, amely valójában az aktuális szál veremének (!) része. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb), és próbálja meg megérteni, hogy a VirtualFree nevű függvény miért gondolta úgy, hogy a memóriablokk dinamikusan van lefoglalva vagy leképezve, de ez valójában a veremből lefoglalt memória volt.
Az Application Verifier által megjelenített információk- 1 . paraméter- Foglalási alapcím.
- 2 . paraméter- Memóriaterület mérete.
- 3 . paraméter- Stack low limit address.
- 4 . paraméter- Halmozza a magas korlátú címet.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: FREE_THREAD_STACK_MEMORY
- Kód leállítása: 0x609
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A VirtualFree művelet helytelen FreeType paramétere.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás-ellenőrző a FreeType paraméter helytelen értékével rendelkező VirtualFree-t észlel. A paraméter csak két elfogadható értéke MEM_DECOMMIT és MEM_RELEASE. Ha a VirtualFree a kettő kivételével bármilyen más értékkel van meghívva, a VirtualFree nem fogja felszabadítani a memóriát. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb): valószínűleg a VirtualFree hívója a bűnös.
Az Application Verifier által megjelenített információk- 1 . paraméter- Az alkalmazás által használt helytelen érték.
- 2 . paraméter- Várt helyes érték 1.
- 3 . paraméter- Várt helyes érték 2.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_FREE_TYPE
- Kód leállítása: 0x60A
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A már ingyenes virtuális memóriablokk felszabadítása.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás-ellenőrző egy virtualFree-et észlel egy már ingyenes címhez. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb), és próbálja meg megállapítani, hogy miért van már szabad a memória, de az alkalmazás újra megpróbálja felszabadítani. A(z) '!avrf -vs -a parameter1' megkeresi a címhez lefoglalt/felszabadított kódútvonalak veremnyomait tartalmazó naplót, és megjeleníti ezeket a veremnyomokat, ha elérhetők. Ez a memória felszabadító veremkövetet jelenhet meg.
Az Application Verifier által megjelenített információk- 1 . paraméter- Memóriablokk címe.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: MEM_ALREADY_FREE
- Kód leállítása: 0x60B
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A VirtualFree (MEM_RELEASE) művelet helytelen Méret paramétere.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás-ellenőrző észlel egy VirtualFree -t (MEM_RELEASE), amely nem nulla értéket tartalmaz a dwSize paraméterhez. A MEM_RELEASE használatakor ennek a paraméternek az egyetlen elfogadható értéke a 0. Ha a VirtualFree a 0 kivételével bármilyen más értékkel van meghívva, a VirtualFree nem fogja felszabadítani a memóriát. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb): valószínűleg a VirtualFree hívója a bűnös.
Az Application Verifier által megjelenített információk- 1 . paraméter- Az alkalmazás által használt helytelen méret.
- 2 . paraméter- A várt megfelelő méret (0).
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_FREE_SIZE
- Kód leállítása: 0x60C
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Váratlan kivétel lépett fel a DLL belépési pont rutinjában.
Valószínű okEz a leállítás akkor jön létre, ha egy DLL belépési pont (DllMain) függvénye kivételt okoz. Ennek egyik oka a következő: ha a DllMain(DLL_PROCESS_ATTACH) kivételt emel ki, a Windows DLL-betöltő a következőt fogja használni: - A kivétel elfogása és elrejtése; – Távolítsa el a DLL-t a DllMain(DLL_PROCESS_DETACH) meghívása nélkül. Így sok esetben a DLL már lefoglalt néhány erőforrást, majd felvetette a kivételt, és nem lesz lehetősége ezeknek az erőforrásoknak a DllMain (DLL_PROCESS_DETACH) kiadására. A hibakereséshez a következőt kell elvégeznie:
- du <parameter1> – a DLL-név megjelenítéséhez;
- .exr <parameter2> – a kivételadatok megjelenítéséhez;
- .cxr <paraméter3> és kb – a kivétel környezeti adatainak és a veremkövetésnek a kivétel keletkezésekor való megjelenítéséhez;
- < A 4>. paraméter egy belső hitelesítő struktúra címe, és nincs jelentősége a hitelesítő felhasználók többségének.
- 1 . paraméter- DLL-név (a memóriaképet a du használatával).
- 2 . paraméter- Kivételrekord. A .exr használatával jelenítheti meg.
- 3 . paraméter- Környezeti rekord. A .cxr használatával jelenítheti meg.
- 4 . paraméter- Verifier DLL-leíró
- Tesztréteg: Emlékezet
- Leállítás azonosítója: DLL_UNEXPECTED_EXCEPTION
- Kód leállítása: 0x60D
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Váratlan kivétel lépett fel a szálfüggvényben.
Valószínű okEz a leállítás akkor jön létre, ha egy szálfüggvény kivételt okoz. Ez azért rossz, mert az egész folyamat meg fog halni. A hibakereséshez a következőt kell elvégeznie:
- < az 1>. paraméter jelentős lehet a kivétel típusa szempontjából. Például egy kivételkód C0000005 hozzáférés-megsértést jelent;
- .exr <parameter2> – a kivételadatok megjelenítéséhez;
- .cxr <parameter3> , majd kb – a kivétel környezeti adatainak megjelenítéséhez.
- 1 . paraméter- Kivételkód.
- 2 . paraméter- Kivételrekord. A .exr használatával jelenítheti meg.
- 3 . paraméter- Környezeti rekord. A .cxr használatával jelenítheti meg.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: THREAD_UNEXPECTED_EXCEPTION
- Kód leállítása: 0x60E
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Váratlan kivétel lépett fel a memória próba közben.
Valószínű okEz a leállítás akkor jön létre, ha kivételt kapunk egy IsBadXXXPtr-hívás során. Ez azt jelenti, hogy a hívó által felvállalt memóriapuffer valójában nem rendelkezik a hívó által feltételezett védelemmel, vagy hogy a memória már felszabadult stb. Az IsBadXXXPtr API-k használatának okairól a fenti vitafórumban további példákat talál a többi stop kódról (PROBE_INVALID_ADDRESS, PROBE_FREE_MEM, PROBE_GUARD_PAGE, PROBE_NULL, PROBE_INVALID_START_OR_SIZE). A hibakereséshez a következőt kell elvégeznie:
- < az 1>. paraméter általában C0000005, ami a hozzáférés megsértését jelenti;
- .exr <parameter2> – a kivételadatok megjelenítéséhez;
- .cxr <paraméter3> , majd kb – a kivétel környezeti adatainak és a veremkövetésnek a kivétel keletkezésekor való megjelenítéséhez.
- 1 . paraméter- Kivételkód.
- 2 . paraméter- Kivételrekord. A .exr használatával jelenítheti meg.
- 3 . paraméter- Környezeti rekord. A .cxr használatával jelenítheti meg.
- 4 . paraméter- Nincs használatban
- Tesztréteg: Emlékezet
- Leállítás azonosítója: PROBE_UNEXPECTED_EXCEPTION
- Kód leállítása: 0x60F
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Null cím alaphelyzetbe állításának kísérlete.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás hitelesítője null első paraméterrel észlel egy VirtualFree -hívást (MEM_RESET). MEM_RESET csak a már lefoglalt memóriához használható, ezért ebben az esetben a NULL nem érvényes első paraméter.
Az Application Verifier által megjelenített információk- 1 . paraméter- Nincs használatban.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_MEM_RESET
- Kód leállítása: 0x610
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A halom memóriablokkjának felszabadítása az aktuális szál veremcímtartományában.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás-ellenőrző heapFree-et észlel az aktuális szál veremének (!) ténylegesen részét képező memóriablokkhoz. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb), és próbálja meg megérteni, hogy a HeapFree nevű függvény miért gondolta úgy, hogy a memóriablokk dinamikusan van lefoglalva vagy leképezve, de ez valójában a veremből lefoglalt memória volt.
Az Application Verifier által megjelenített információk- 1 . paraméter- Foglalási alapcím.
- 2 . paraméter- Memóriaterület mérete.
- 3 . paraméter- Stack low limit address.
- 4 . paraméter- Halmozza a magas korlátú címet.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: FREE_THREAD_STACK_MEMORY_AS_HEAP
- Kód leállítása: 0x612
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A memóriaterület leválasztása az aktuális szál veremcímtartományán belül.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás hitelesítője unmapViewOfFile-t észlel az aktuális szál veremének (!) ténylegesen részét képező memóriablokkhoz. A hibakereséshez tekintse meg az aktuális verem nyomkövetését (kb), és próbálja meg megérteni, hogy a UnmapViewOfFile nevű függvény miért gondolta úgy, hogy a memóriablokk dinamikusan van lefoglalva vagy leképezve, de ez valójában a veremből lefoglalt memória volt.
Az Application Verifier által megjelenített információk- 1 . paraméter- Foglalási alapcím.
- 2 . paraméter- Memóriaterület mérete.
- 3 . paraméter- Stack low limit address.
- 4 . paraméter- Halmozza a magas korlátú címet.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: FREE_THREAD_STACK_MEMORY_AS_MAP
- Kód leállítása: 0x613
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Helytelen RTL_RESOURCE cím.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás null értéket vagy más helytelen címet (például kernel módú címet) próbál használni egy érvényes objektum címeként. Az RtlInitializeResource (NULL) egy helytelen API-hívás, amely elindítja az ilyen típusú hitelesítő leállást. a param1 a használt helytelen cím, és a bűnös a verem nyomkövetésén van (kb-val jeleníti meg).
Az Application Verifier által megjelenített információk- 1 . paraméter- Cím.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_RESOURCE_ADDRESS
- Kód leállítása: 0x614
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Érvénytelen kritikus szakaszcím.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás null értéket vagy más helytelen címet (például kernel módú címet) próbál használni egy érvényes objektum címeként. Az EnterCriticalSection(NULL) egy helytelen API-hívás, amely elindítja az ilyen típusú hitelesítő leállást. a param1 a használt helytelen cím, és a bűnös a verem nyomkövetésén van (kb-val jeleníti meg).
Az Application Verifier által megjelenített információk- 1 . paraméter- Cím.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_CRITSECT_ADDRESS
- Kód leállítása: 0x615
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A kód nem végrehajtható memóriában való végrehajtásának kísérlete.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás nem végrehajtható vagy ingyenes címről próbál kódot futtatni. A hibakereséshez a következőt kell elvégeznie:
- u <parameter2> – a bűnös kód összevonásához
- .exr <paraméter3> – a kivételadatok megjelenítéséhez
- .cxr <parameter4> , majd kb – a kivétel környezeti adatainak és a veremkövetésnek a kivétel keletkezésekor való megjelenítéséhez.
- 1 . paraméter- A cím elérése folyamatban van.
- 2 . paraméter- Érvénytelen hozzáférést végrehajtó kód.
- 3 . paraméter- Kivételrekord. A .exr használatával jelenítheti meg.
- 4 . paraméter- Környezeti rekord. A .cxr használatával jelenítheti meg.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: THREAD_UNEXPECTED_EXCEPTION_CODE
- Kód leállítása: 0x616
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Váratlan kivétel lépett fel a kimeneti puffer inicializálása során.
Valószínű okEz a leállítás akkor jön létre, ha kivételt kapunk a Win32 vagy CRT API kimeneti paramétereként megadott puffer inicializálása közben. Ez általában azt jelenti, hogy a megadott kimeneti puffer mérete helytelen. A hibakereséshez a következőt kell elvégeznie:
- .exr <paraméter3> – a kivételadatok megjelenítéséhez
- .cxr <parameter4> , majd kb – a kivétel környezeti adatainak és a veremkövetésnek a kivétel keletkezésekor való megjelenítéséhez.
- 1 . paraméter- Puffer kezdőcíme.
- 2 . paraméter- Puffer mérete.
- 3 . paraméter- Kivételrekord. A .exr használatával jelenítheti meg.
- 4 . paraméter- Környezeti rekord. A .cxr használatával jelenítheti meg.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: OUTBUFF_UNEXPECTED_EXCEPTION
- Kód leállítása: 0x617
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Váratlan kivétel a halomblokk méretének keresésekor.
Valószínű okEz a leállítás akkor jön létre, ha kivételt kapunk, miközben meghívjuk a HeapSize-t egy felszabadított halomblokkra. Ez általában azt jelenti, hogy a megadott halomblokk címe helytelen, vagy a halom sérült. A hibakereséshez a következőt kell elvégeznie:
- .exr <paraméter3> – a kivételrekord megjelenítéséhez
- .cxr <parameter4> , majd kb – a kivétel környezeti adatainak és a veremkövetésnek a kivétel keletkezésekor való megjelenítéséhez.
- 1 . paraméter- A felszabadított halomblokk címe.
- 2 . paraméter- Halomfogópont.
- 3 . paraméter- Kivételrekord. A .exr használatával jelenítheti meg.
- 4 . paraméter- Környezeti rekord. A .cxr használatával jelenítheti meg.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: SIZE_HEAP_UNEXPECTED_EXCEPTION
- Kód leállítása: 0x618
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Memóriablokk felszabadítása érvénytelen kezdőcímmel.
Valószínű okEz a leállítás akkor jön létre, ha a program meghívja a VirtualFree (MEM_RELEASE) függvényt egy lpAddress paraméterrel, amely nem a VirtualAlloc vagy a VirtualAllocEx függvény által visszaadott alapcím, amikor a lapterület foglalt volt; A hibakereséshez a következőt kell elvégeznie:
- kb – az aktuális verem nyomkövetésének megjelenítéséhez, amely meghívja a VirtualFree-t. A valószínű bűnös az a DLL, amely VirtualFree-t hív.
- 1 . paraméter- A felszabadított memóriablokk címe.
- 2 . paraméter- Várt helyes memóriablokk-cím.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_FREEMEM_START_ADDRESS
- Kód leállítása: 0x619
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Memóriablokk kibontása érvénytelen kezdőcímmel.
Valószínű okEz a leállítás akkor jön létre, ha a program meghívja a UnmapViewOfFile-t egy olyan lpBaseAddress paraméterrel, amely nem azonos a MapViewOfFile vagy a MapViewOfFileEx függvény előző hívása által visszaadott értékkel. A hibakereséshez a következőt kell elvégeznie:
- kb – az aktuális verem nyomkövetésének megjelenítéséhez, amely unmapViewOfFile-t hív meg. A valószínű bűnös az UnmapViewOfFile-t hívó DLL.
- 1 . paraméter- A leképezetlen memóriablokk címe.
- 2 . paraméter- Várt helyes memóriablokk-cím.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: INVALID_UNMAPVIEW_START_ADDRESS
- Kód leállítása: 0x61A
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
a threadpool visszahívási függvényében váratlan kivétel lépett fel.
Valószínű okEz a leállítás akkor jön létre, ha a szállánc szálának visszahívási függvénye kivételt okoz. A hibakereséshez a következőt kell elvégeznie:
- < az 1>. paraméter jelentős lehet a kivétel típusa szempontjából. Például egy kivételkód C0000005 hozzáférés-megsértést jelent.
- .exr <parameter2> – a kivételadatok megjelenítéséhez.
- .cxr <parameter3> , majd kb – a kivétel környezeti adatainak megjelenítéséhez.
- 1 . paraméter- Kivételkód
- 2 . paraméter- Kivételrekord. A .exr használata a megjelenítéshez
- 3 . paraméter- Környezeti rekord. A .cxr használata a megjelenítéshez
- 4 . paraméter- Nincs használatban
- Tesztréteg: Emlékezet
- Leállítás azonosítója: THREADPOOL_UNEXPECTED_EXCEPTION
- Kód leállítása: 0x61B
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
kód nem végrehajtható memóriában
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás nem végrehajtható vagy ingyenes címről próbál kódot futtatni. A hibakereséshez a következőt kell elvégeznie:
- u <parameter2> – a bűnös kód összevonásához
- .exr <paraméter3> – a kivételadatok megjelenítéséhez
- .cxr <parameter4> , majd kb – a kivétel környezeti adatainak és a veremkövetésnek a kivétel keletkezésekor való megjelenítéséhez.
- 1 . paraméter- Hozzáférés alatt álló cím
- 2 . paraméter- Érvénytelen hozzáférést végrehajtó kód
- 3 . paraméter- Kivételrekord. A .exr használatával jelenítheti meg.
- 4 . paraméter- Környezeti rekord. A .cxr használatával jelenítheti meg.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: THREADPOOL_UNEXPECTED_EXCEPTION_CODE
- Kód leállítása: 0x61C
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Végrehajtható halom létrehozása.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás végrehajtható halomot hoz létre. Ez biztonsági kockázatot jelenthet.
Az Application Verifier által megjelenített információk- 1 . paraméter- Nincs használatban.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: EXECUTABLE_HEAP
- Kód leállítása: 0x61D
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Végrehajtható memória kiosztása.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás végrehajtható memóriát ad ki. Ez biztonsági kockázatot jelenthet.
Az Application Verifier által megjelenített információk- 1 . paraméter- A hívó által megadott lapvédelem.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Emlékezet
- Leállítás azonosítója: EXECUTABLE_MEMORY
- Kód leállítása: 0x61E
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A kód nem végrehajtható memóriában való végrehajtásának kísérlete (első esély).
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás nem végrehajtható vagy ingyenes címről próbál kódot futtatni. A hibakereséshez a következőt kell elvégeznie:
- u <parameter2> – a bűnös kód összevonásához
- .exr <paraméter3> – a kivételadatok megjelenítéséhez
- .cxr <parameter4> , majd kb – a kivétel környezeti adatainak és a veremkövetésnek a kivétel keletkezésekor való megjelenítéséhez.
- 1 . paraméter- A cím elérése folyamatban van.
- 2 . paraméter- Érvénytelen hozzáférést végrehajtó kód.
- 3 . paraméter- Kivételrekord. A .exr használatával jelenítheti meg.
- 4 . paraméter- Környezeti rekord. A .cxr használatával jelenítheti meg.
- Tesztréteg: Kivételek
- Leállítás azonosítója: FIRST_CHANCE_ACCESS_VIOLATION_CODE
- Kód leállítása: 0x650
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A szálszál prioritása megváltozott.
Valószínű okEz a leállítás akkor jön létre, ha a szál prioritása megváltozik, amikor visszakerül a szálkészletbe.
Az Application Verifier által megjelenített információk- Formátum: - a visszahívást (%p) végrehajtó szállánc (%x) módosult szálprioritású (%i -> %i)
- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Aktuális prioritás.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: INCONSISTENT_PRIORITY
- Kód leállítása: 0x700
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A szálszál affinitása megváltozott.
Valószínű okEz a leállítás akkor jön létre, ha a szál affinitása megváltozik, amikor visszakerül a szálkészletbe.
Az Application Verifier által megjelenített információk- Formátum: - threadpool thread (%x) miután végrehajtotta a visszahívást (%p) megváltozott szál affinitási maszkot (%p -> %p)
- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Aktuális affinitás.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: INCONSISTENT_AFFINITY_MASK
- Kód leállítása: 0x701
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Feldolgozatlan msg az aktuális szál msg-készletében.
Valószínű okEz a leállítás akkor jön létre, ha bármely üzenet feldolgozatlanként marad, amikor a szálszál visszakerül a készletbe. Ez veszélyes, mivel teljesen más kontextusban fogják feldolgozni. Kérjük, használja a !avrf -tp <Param4> parancsot a szálra közzétett üzenetek megtekintéséhez.
Az Application Verifier által megjelenített információk- Formátum: A - threadpool thread (%x) a visszahívás végrehajtása után (%p) kiugró ablaküzenettel rendelkezik (%x: %x)
- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Threadpool szálazonosító. A !avrf -tp <threadid> használatával megtekintheti a szálra küldött üzeneteket.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: ORPHANED_THREAD_MESSAGE
- Kód leállítása: 0x702
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A nem látható ablak az aktuális szálhoz tartozik.
Valószínű okEz a leállítás akkor jön létre, ha egy ablak életben marad, amikor a szálszál visszakerül a készletbe.
Az Application Verifier által megjelenített információk- Formátum: - a visszahívást (%p) végrehajtó szállánc (%x) érvényes hwnd (%x: %s) állapotú, amely üzeneteket fogadhat
- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Threadpool szálazonosító.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: ORPHANED_THREAD_WINDOW
- Kód leállítása: 0x703
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
ExitThread() egy szálas szálon.
Valószínű okEz a leállítás akkor jön létre, ha az ExitThread egy szálláncszálon van meghívva. Ez tilos, mert instabillá teszi a rendszert. Ez erőforrásszivárgást, lefagyást vagy AV-t okoz.
Az Application Verifier által megjelenített információk- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: ILLEGAL_THREAD_EXIT
- Kód leállítása: 0x704
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A szál megszemélyesítési állapotban van, amikor visszakerül egy szálsorszálba.
Valószínű okEz a leállítás akkor jön létre, ha a visszahívási függvény módosítja a szál jogkivonatát egy másik felhasználó megszemélyesítésére, és elfelejtette alaphelyzetbe állítani, mielőtt visszaküldené a szálkészletbe.
Az Application Verifier által megjelenített információk- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: THREAD_IN_IMPERSONATION
- Kód leállítása: 0x705
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Egy állandó szálat igénylő függvényt hívunk meg.
Valószínű okNéhány Microsoft Windows API-t dedikált vagy állandó szálon kell meghívni. A szálkészletben általában kerülnie kell a szál helyi tárolását és az állandó szálat igénylő aszinkron hívások, például a RegNotifyChangeKeyValue függvény használatát. Az ilyen függvények azonban várólistára állíthatók egy állandó feldolgozói szálra a QueueUserWorkItem használatával a WT_EXECUTEINPERSISTENTTHREAD lehetőséggel. A hibakeresőben lévő kb megjeleníti a hívót.
Az Application Verifier által megjelenített információk- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: PERSISTED_THREAD_NEEDED
- Kód leállítása: 0x706
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A szál piszkos tranzakciós állapotban van.
Valószínű okEz a leállítás akkor jön létre, ha a visszahívási függvény elfelejtette bezárni vagy alaphelyzetbe állítani az aktuális tranzakcióleírót.
Az Application Verifier által megjelenített információk- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Tranzakciókezelő.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: DIRTY_TRANSACTION_CONTEXT
- Kód leállítása: 0x707
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Ebben a szálkészlet-állapotban kiegyensúlyozatlan CoInit- és CoUnInit-hívások találhatók.
Valószínű okEz a leállítás akkor jön létre, ha a visszahívási függvény kiegyensúlyozatlannak hívja a CoInit és a CoUnInit függvényt.
Az Application Verifier által megjelenített információk- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Kiegyensúlyozott hívások száma.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: DIRTY_COM_STATE
- Kód leállítása: 0x708
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Az időzítőobjektum paraméterei inkonzisztensek. Az időtartamnak 0-nak kell lennie, ha WT_EXECUTEONLYONCE van megadva az időzítő létrehozásakor
Valószínű okEz a leállítás akkor jön létre, ha az időzítő jelzésének időtartama nem nulla, ha az időzítő csak egyszer van beállítva a WT_EXECUTEONLYONCE jelzővel
Az Application Verifier által megjelenített információk- 1 . paraméter- Megadott időszak.
- 2 . paraméter- Jelzők megadva.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: INCONSISTENT_TIMER_PARAMS
- Kód leállítása: 0x709
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A rakodózárat a visszahívásban lévő szálszál tartotta.
Valószínű okEz a leállítás akkor jön létre, ha a rakodózár a visszahívásban van, és nem szabadul fel, amikor a szál visszakerül a szálkészletbe.
Az Application Verifier által megjelenített információk- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: LOADER_LOCK_HELD
- Kód leállítása: 0x70A
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Az előnyben részesített nyelvet a visszahívásban lévő szálszál állítja be.
Valószínű okEz a leállítás akkor jön létre, ha az előnyben részesített nyelv be van állítva a visszahívásban, és nem törlődik, amikor a szál visszakerül a szálkészletbe.
Az Application Verifier által megjelenített információk- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: PREFERRED_LANGUAGES_SET
- Kód leállítása: 0x70B
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A háttér prioritását a visszahívás szállánca állítja be.
Valószínű okEz a leállítás akkor jön létre, ha a háttér prioritása be van állítva a visszahívásban, és nem lesz letiltva, amikor a szál visszakerül a szálkészletbe.
Az Application Verifier által megjelenített információk- 1 . paraméter- Visszahívás függvény.
- 2 . paraméter- Környezet.
- 3 . paraméter- Threadpool object allocation stack trace, use dps to dump it.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: BACKGROUND_PRIORITY_SET
- Kód leállítása: 0x70C
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
TerminateThread() egy szálláncszálon.
Valószínű okEz a leállítás akkor jön létre, ha a TerminateThread egy szálláncszálon van meghívva. Ez tilos, mert instabillá teszi a rendszert. Ez erőforrásszivárgást, lefagyást vagy AV-t okoz.
Az Application Verifier által megjelenített információk- 1 . paraméter- Nincs használatban.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: Szálkészlet
- Leállítás azonosítója: ILLEGAL_THREAD_TERMINATION
- Kód leállítása: 0x70D
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A verem vissza lett tekerve, amikor az aszinkron I/O-művelet függőben van.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás olyan I/O-műveletet adott ki, amely egy veremváltozót használ, és nem várta meg, hogy az I/O befejeződjön, ami veremsérüléshez vezet. A hibakereséshez a következőt kell elvégeznie:
- dps <paraméter4> a verem nyomkövetésének megjelenítéséhez az I/O kiadásakor. Az 1. paraméter a veremalapú címet és a 3. paramétert jelöli az I/O-t kibocsátó szálat.
- 1 . paraméter- Az I/O-ban használt veremváltozó címe.
- 2 . paraméter- Aktuális veremmutató.
- 3 . paraméter- Eredeti szál, amely kiadta az I/O-t.
- 4 . paraméter- Stack Trace az I/O kiadásakor.
- Tesztréteg: IO
- Leállítás azonosítója: ASYNCIO_STACK_UNWIND
- Kód leállítása: 0x800
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A verem sérült, amikor az aszinkron I/O-művelet függőben van.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás olyan I/O-műveletet adott ki, amely egy veremváltozót használ, és nem várta meg, hogy az I/O befejeződjön, ami veremsérüléshez vezet. A hibakereséshez a következőt kell elvégeznie:
- dps <paraméter4> a verem nyomkövetésének megjelenítéséhez az I/O kiadásakor. Az 1. paraméter a veremalapú címet és a 3. paramétert jelöli az I/O-t kibocsátó szálat.
- 1 . paraméter- Az I/O-ban használt veremváltozó címe.
- 2 . paraméter- Aktuális veremmutató.
- 3 . paraméter- Eredeti szál, amely kiadta az I/O-t.
- 4 . paraméter- Stack Trace az I/O kiadásakor.
- Tesztréteg: IO
- Leállítás azonosítója: ASYNCIO_CORRUPTED_STACK
- Kód leállítása: 0x801
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Felszabadított cím használata függőben lévő I/O-műveletben.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás I/O-műveletet adott ki, és felszabadította az I/O-ban használt memóriát az I/O befejezése előtt, ami memóriasérüléshez vezet stb. A hibakereséshez a következőt kell elvégeznie:
- dps <parameter4> – a verem nyomkövetésének megjelenítése az I/O kiadásakor. Az 1. paraméter az I/O-ban használt címet jelöli. A Parameter2 a felszabadított címet, a 3. paraméter pedig az I/O-t kibocsátó szálat jelzi.
- 1 . paraméter- Az I/O-ban használt cím.
- 2 . paraméter- A cím felszabadítva.
- 3 . paraméter- Eredeti szál, amely kiadta az I/O-t.
- 4 . paraméter- Stack Trace az I/O kiadásakor.
- Tesztréteg: IO
- Leállítás azonosítója: FREED_ADDRESS_IN_PENDINGIO
- Kód leállítása: 0x802
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Az I/O-állapotblokkok (ÁTFEDÉSBEN) újra felhasználhatók, miközben a társított I/O-kérés még függőben van.
Valószínű okEz a leállítás akkor jön létre, ha az alkalmazás újra felhasznált egy I/O állapotblokkot (ÁTFEDÉSBEN), miközben az adott I/O állapotblokkot használó I/O-kérés (ÁTFEDÉSBEN) még függőben van. A hibakereséshez a következőt kell elvégeznie:
- dps <paraméter3> , amely megjeleníti a verem nyomkövetését az eredeti I/O kiadásakor. Az 1. paraméter az I/O-ban használt címet, a 2. paramétert pedig az I/O-t kibocsátó szálat jelöli.
- 1 . paraméter- Az I/O állapotblokk címe (ÁTFEDÉSBEN).
- 2 . paraméter- Eredeti szál, amely kiadta az I/O-t.
- 3 . paraméter- Stack Trace az I/O kiadásakor.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: IO
- Leállítás azonosítója: REUSED_IOSTATUS_BLOCK
- Kód leállítása: 0x803
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Nem támogatott jelölő használatával FILE_ATTRIBUTE_NOT_CONTENT_INDEXED a CreateFile-on
Valószínű okAz MSDN hibásan dokumentált CreateFile régi verziója támogatja a FILE_ATTRIBUTE_NOT_CONTENT_INDEXED. Ha ez a jelző a rendeltetése, akkor más API-függvények, például a SetFileAttributes használatával kell beállítani.
- ln <parameter1> – a CreateFile hívójának megkeresése.
- Formátum: - CreateFile %hs%ws írása közben jelzőkkel %08x %08x %08x
- 1 . paraméter- Cím visszaküldése.
- 2 . paraméter- Nincs használatban.
- 3 . paraméter- Nincs használatban.
- 4 . paraméter- Nincs használatban.
- Tesztréteg: IO
- Leállítás azonosítója: USING_BAD_CREATEFILE_FLAG
- Kód leállítása: 0x804
- Súlyosság: Figyelmeztetés
- Egyszeri hiba:
- Hibajelentés: Egyik sem
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Kiszivárogtak a halomfoglalások.
Valószínű okEz a leállítás akkor jön létre, ha a foglalás tulajdonosi DLL-je dinamikusan ki lett ürítve az erőforrások birtoklása közben.
Az Application Verifier által megjelenített információk- 1 . paraméter- A kiszivárgott foglalás címe. Futtassa a !halom -p -a <címet> a foglalással kapcsolatos további információkért.
- 2 . paraméter- A foglalási verem nyomkövetésének címe. Futtassa a dps-címet <> a foglalási verem megtekintéséhez.
- 3 . paraméter- A tulajdonos dll-nevének címe. Futtassa a du <címet> a dll nevének olvasásához.
- 4 . paraméter- A tulajdonos dll alapja. Futtassa a .reload <dll_name> = <címet> a tulajdonosi dll újratöltéséhez. Az "lm" használatával további információt kaphat a betöltött és a kipakolt modulokról.
- Tesztréteg: Szivárog
- Leállítás azonosítója: ELHELYEZÉS
- Kód leállítása: 0x900
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Kiszivárgott egy HANDLE.
Valószínű okEz a leállítás akkor jön létre, ha a leíró tulajdonosi DLL-je dinamikusan ki lett ürítve az erőforrások birtoklása közben. A leállítás hibakereséséhez futtassa a !htrace paraméter1 parancsot a leíróval kapcsolatos további információk lekéréséhez.
Az Application Verifier által megjelenített információk- 1 . paraméter- A kiszivárgott fogópont értéke. Futtassa a !htrace leírót <> a leíróval kapcsolatos további információk lekéréséhez, ha a leíró nyomkövetése engedélyezve van.
- 2 . paraméter- A foglalási verem nyomkövetésének címe. Futtassa a dps-címet <> a foglalási verem megtekintéséhez.
- 3 . paraméter- A tulajdonos dll-nevének címe. Futtassa a du <címet> a dll nevének olvasásához.
- 4 . paraméter- A tulajdonos dll alapja. Futtassa a .reload <dll_name> = <címet> a tulajdonosi dll újratöltéséhez. Az "lm" használatával további információt kaphat a betöltött és a kipakolt modulokról.
- Tesztréteg: Szivárog
- Leállítás azonosítója: FOGANTYÚ
- Kód leállítása: 0x901
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Kiszivárgott egy HKEY.
Valószínű okEz a leállítás akkor jön létre, ha a beállításkulcs tulajdonosi DLL-je dinamikusan ki lett ürítve az erőforrások birtoklása közben.
Az Application Verifier által megjelenített információk- 1 . paraméter- A kiszivárgott HKEY értéke.
- 2 . paraméter- A foglalási verem nyomkövetésének címe. Futtassa a dps-címet <> a foglalási verem megtekintéséhez.
- 3 . paraméter- A tulajdonos dll-nevének címe. Futtassa a du <címet> a dll nevének olvasásához.
- 4 . paraméter- A tulajdonos dll alapja. Futtassa a .reload <dll_name> = <címet> a tulajdonosi dll újratöltéséhez. Az "lm" használatával további információt kaphat a betöltött és a kipakolt modulokról.
- Tesztréteg: Szivárog
- Leállítás azonosítója: BEJEGYZÉS
- Kód leállítása: 0x902
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Kiszivárgott egy virtuális foglalás.
Valószínű okEz a leállítás akkor jön létre, ha a virtuális foglalás tulajdonosi DLL-je dinamikusan ki lett ürítve az erőforrások birtoklása közben.
Az Application Verifier által megjelenített információk- 1 . paraméter- Kiszivárgott foglalási cím.
- 2 . paraméter- A foglalási verem nyomkövetésének címe. Futtassa a dps-címet <> a foglalási verem megtekintéséhez.
- 3 . paraméter- A tulajdonos dll-nevének címe. Futtassa a du <címet> a dll nevének olvasásához.
- 4 . paraméter- A tulajdonos dll alapja. Futtassa a .reload <dll_name> = <címet> a tulajdonosi dll újratöltéséhez. Az "lm" használatával további információt kaphat a betöltött és a kipakolt modulokról.
- Tesztréteg: Szivárog
- Leállítás azonosítója: VIRTUAL_RESERVATION
- Kód leállítása: 0x903
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Kiszivárgott egy BSTR.
Valószínű okEz a leállítás akkor jön létre, ha a SysString tulajdonos dll-je dinamikusan ki lett ürítve az erőforrások birtoklása közben.
Az Application Verifier által megjelenített információk- 1 . paraméter- A kiszivárgott BSTR címe. Futtassa a !halom -p -a <címet> a foglalással kapcsolatos további információkért.
- 2 . paraméter- A foglalási verem nyomkövetésének címe. Futtassa a dps-címet <> a foglalási verem megtekintéséhez.
- 3 . paraméter- A tulajdonos dll-nevének címe. Futtassa a du <címet> a dll nevének olvasásához.
- 4 . paraméter- A tulajdonos dll alapja. Futtassa a .reload <dll_name> = <címet> a tulajdonosi dll újratöltéséhez. Az "lm" használatával további információt kaphat a betöltött és a kipakolt modulokról.
- Tesztréteg: Szivárog
- Leállítás azonosítója: SYSSTRING
- Kód leállítása: 0x904
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
A power notification nem lett regisztrálva.
Valószínű okEz a leállítás akkor jön létre, ha a dll regisztrálva van az energiaértesítéshez, és a regisztráció törlése nélkül dinamikusan ki lett ürítve.
Az Application Verifier által megjelenített információk- 1 . paraméter- Az energia-értesítés regisztrációjának címe.
- 2 . paraméter- A regisztrációs verem nyomkövetésének címe. Futtassa a dps-címet <> a foglalási verem megtekintéséhez.
- 3 . paraméter- A tulajdonos dll-nevének címe. Futtassa a du <címet> a dll nevének olvasásához.
- 4 . paraméter- A tulajdonos dll alapja. Futtassa a .reload <dll_name> = <címet> a tulajdonosi dll újratöltéséhez. Az "lm" használatával további információt kaphat a betöltött és a kipakolt modulokról.
- Tesztréteg: Szivárog
- Leállítás azonosítója: POWER_NOTIFICATION
- Kód leállítása: 0x905
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Kiszivárgott egy COM-foglalás.
Valószínű okEz a leállítás akkor jön létre, ha a COM-foglalás tulajdonosi DLL-je dinamikusan ki lett ürítve az erőforrások birtoklása közben.
Az Application Verifier által megjelenített információk- 1 . paraméter- A kiszivárgott COM-foglalás címe. Futtassa a !halom -p -a <címet> a foglalással kapcsolatos további információkért.
- 2 . paraméter- A foglalási verem nyomkövetésének címe. Futtassa a dps-címet <> a foglalási verem megtekintéséhez.
- 3 . paraméter- A tulajdonos dll-nevének címe. Futtassa a du <címet> a dll nevének olvasásához.
- 4 . paraméter- A tulajdonos dll alapja. Futtassa a .reload <dll_name> = <címet> a tulajdonosi dll újratöltéséhez. Az "lm" használatával további információt kaphat a betöltött és a kipakolt modulokról.
- Tesztréteg: Szivárog
- Leállítás azonosítója: COM_ALLOCATION
- Kód leállítása: 0x906
- Súlyosság: Hiba
- Egyszeri hiba:
- Hibajelentés: Törik
- Naplózás fájlba: igen
- Backtrace létrehozása: igen
Lásd még:
Application Verifier – Kódok és definíciók leállítása
Application Verifier – Áttekintés
Application Verifier – Funkciók
Application Verifier – Alkalmazások tesztelése
Application Verifier – Tesztek az Application Verifierben
Application Verifier – Az alkalmazás-ellenőrző leállítása hibakeresése