Debug Crash Dump in VS2010
Domanda
Dopo aver visto l'ultima Hanselminutes in video 9 , sono andato al nostro ambiente dev e ha afferrato un dump di alcuni servizi differenti.
Dopo aver aperto il file di dump ho notato che alcuni erano in grado di eseguire il debug in modalità mista e modalità nativa, e altri solo in modalità nativa. Essendo che ogni servizio è scritto in codice gestito, perché mai la modalità non mista sarà disponibile?
Soluzione
ho capito. Secondo il MSDN docs
Il debugger ora supporta pienamente il debug delle discariche gestite per le applicazioni che utilizzano comune-run-time di lingua (CLR) versione 4.0.
Si scopre che i pochi processi che non hanno il debug modalità mista attivata erano ovviamente scritto in 3.5. Credo che avrei dovuto leggere la documentazione prima. :)
Altri suggerimenti
Quello che i 'servizi diversi' Hai afferrare una discarica di?
'Essendo che ogni servizio è scritto in codice gestito' - Questo non è corretto. Non tutti i servizi sono gestiti codice. In realtà, mi immagino che la maggior parte non lo sono. Non credo che nessuno dei servizi attualmente in esecuzione sulla mia macchina (ancora WinXP - In realtà sto iniziando a ottenere imbarazzato a come fuori moda è ...) sono gestiti codice.
Il modello di esecuzione del servizio è specificato nella API Win32, quindi, anche se tutti i servizi che è venuto con le finestre erano scritti in codice gestito, i terzi possono ancora scrivere, fornire ed installare i servizi di codice nativo.
Forse sempre più servizi vengono gestiti codice ora in Vista e Win7, ma certamente in nessun modo sono tutti loro.