Episodio
Stowed Exception C000027B
Un'eccezione stowed è un tipo di eccezione eseguita dalle applicazioni UWP. È stato introdotto in Windows 8.0 come parte dell'API WinRT (ora nota come UWP).
Il codice eccezione è 0xC000027B.
Il primo parametro eccezione (0) è l'indirizzo iniziale di una matrice di puntatori alle strutture che iniziano con una struttura STOWED_EXCEPTION_INFORMATION_HEADER . Da Windows 8.1, STOWED_EXCEPTION_INFORMATION_V2 è stata la versione in uso.
Il secondo parametro di eccezione (1) è il numero di puntatori nella matrice.
Eccezione stowed è stata sostituita/migliorata dall'eccezione point-of-failure (0xC000027C). Come le eccezioni POF, il codice eccezione viene generato da WinRT Framework. Non richiede che le applicazioni vengano ricompilata per poterle usare.
Quando un'operazione asincrona ha esito negativo, viene generata un'eccezione stowed. Quando l'eccezione viene segnalata dal thread di lavoro tramite un'eccezione RoOriginateException o RoOriginateLanguageException, un stack backtrace (matrice di puntatori istruzioni) viene raccolto del thread corrente tramite una chiamata di funzione CaptureStackBackTrace. Stack Backtrace e HRESULT dell'eccezione vengono sottoposti a wrapping in un oggetto IRestrictedErrorInfo e indirizzati attraverso i livelli di proiezione del linguaggio di WinRT al chiamante.
Se l'eccezione non viene gestita dal chiamante, l'eccezione scomposto viene generata in modo irreversibile. Poiché l'eccezione viene posticipata, il contesto corrente del dump associato ha un valore minimo. Il thread del problema originale non esiste più e, in caso affermativo, ha concluso l'operazione (ovvero la memoria dello stack del thread è stata sovrascritta). Ciò significa che i parametri della funzione e le variabili locali non sono disponibili.
Per eseguire il debug di questi problemi con gli strumenti di debug per Windows, seguire questa procedura:
- .exr -1
- Visualizzare il codice, l'indirizzo e il conteggio delle eccezioni stowed tramite i parametri
- !pde.dse
- Elenca le eccezioni stowed
- Ogni HRESULT viene descritto (stesso output di !pde.err)
- Ogni backtrace viene visualizzato come stack di chiamate
- Ogni eccezione nidificata (facoltativamente) viene visualizzata (ad esempio !sos.pe output di un'eccezione CLR)
Risorse aggiuntive:
- Inside - Eccezione point-of-failure
- Interno - .exr
- Inside - Windows SDK
- Strumenti di deframmentazione - Estensione del debugger PDE (tramite collegamento a OneDrive)
- Strumenti di deframmentazione - #136 - Debug dei dump di arresto anomalo della modalità utente parte 2
- Strumenti di deframmentazione - #167 - Debug dei dump di arresto anomalo della modalità utente Redux
- Documentazione Microsoft - Strumenti di debug per Windows
- Blog NTDebugging - Parte 1 + Parte 2
- MSDN - RoOriginateException
- MSDN - RoOriginateLanguageException
- MSDN - Interfaccia IRestrictedErrorInfo
Un'eccezione stowed è un tipo di eccezione eseguita dalle applicazioni UWP. È stato introdotto in Windows 8.0 come parte dell'API WinRT (ora nota come UWP).
Il codice eccezione è 0xC000027B.
Il primo parametro eccezione (0) è l'indirizzo iniziale di una matrice di puntatori alle strutture che iniziano con una struttura STOWED_EXCEPTION_INFORMATION_HEADER . Da Windows 8.1, STOWED_EXCEPTION_INFORMATION_V2 è stata la versione in uso.
Il secondo parametro di eccezione (1) è il numero di puntatori nella matrice.
Eccezione stowed è stata sostituita/migliorata dall'eccezione point-of-failure (0xC000027C). Come le eccezioni POF, il codice eccezione viene generato da WinRT Framework. Non richiede che le applicazioni vengano ricompilata per poterle usare.
Quando un'operazione asincrona ha esito negativo, viene generata un'eccezione stowed. Quando l'eccezione viene segnalata dal thread di lavoro tramite un'eccezione RoOriginateException o RoOriginateLanguageException, un stack backtrace (matrice di puntatori istruzioni) viene raccolto del thread corrente tramite una chiamata di funzione CaptureStackBackTrace. Stack Backtrace e HRESULT dell'eccezione vengono sottoposti a wrapping in un oggetto IRestrictedErrorInfo e indirizzati attraverso i livelli di proiezione del linguaggio di WinRT al chiamante.
Se l'eccezione non viene gestita dal chiamante, l'eccezione scomposto viene generata in modo irreversibile. Poiché l'eccezione viene posticipata, il contesto corrente del dump associato ha un valore minimo. Il thread del problema originale non esiste più e, in caso affermativo, ha concluso l'operazione (ovvero la memoria dello stack del thread è stata sovrascritta). Ciò significa che i parametri della funzione e le variabili locali non sono disponibili.
Per eseguire il debug di questi problemi con gli strumenti di debug per Windows, seguire questa procedura:
- .exr -1
- Visualizzare il codice, l'indirizzo e il conteggio delle eccezioni stowed tramite i parametri
- !pde.dse
- Elenca le eccezioni stowed
- Ogni HRESULT viene descritto (stesso output di !pde.err)
- Ogni backtrace viene visualizzato come stack di chiamate
- Ogni eccezione nidificata (facoltativamente) viene visualizzata (ad esempio !sos.pe output di un'eccezione CLR)
Risorse aggiuntive:
- Inside - Eccezione point-of-failure
- Interno - .exr
- Inside - Windows SDK
- Strumenti di deframmentazione - Estensione del debugger PDE (tramite collegamento a OneDrive)
- Strumenti di deframmentazione - #136 - Debug dei dump di arresto anomalo della modalità utente parte 2
- Strumenti di deframmentazione - #167 - Debug dei dump di arresto anomalo della modalità utente Redux
- Documentazione Microsoft - Strumenti di debug per Windows
- Blog NTDebugging - Parte 1 + Parte 2
- MSDN - RoOriginateException
- MSDN - RoOriginateLanguageException
- MSDN - Interfaccia IRestrictedErrorInfo
Per inviare suggerimenti, Invia un problema qui.