FIX: Quando si esegue un'applicazione basata su .NET Framework 2.0, viene generata un'eccezione System.AccessViolationException o su due thread in un dominio applicazione si verifica un blocco di messaggi non consegnati

Traduzione articoli Traduzione articoli
Identificativo articolo: 975954 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sintomi

Si verifica uno dei seguenti problemi quando si esegue un'applicazione in Microsoft .NET Framework 2.0.

Problema 1

Si verifica un danneggiamento dei dati o si riceve un'eccezione System.AccessViolationException. Se si riceve l'eccezione, è inoltre visualizzato il seguente messaggio di errore:
Tentativo di leggere o scrivere memoria protetta. È spesso un'indicazione che altri memoria è danneggiata.
Questo problema si verifica quando tutte le seguenti condizioni sono vere:
  • Un assembly viene condiviso tra più domini.
  • Un metodo di generazione di codice Lightweight (LCG) è associato a un tipo che si trova all'interno di assembly condiviso.
  • Il metodo LCG viene raccolti in diversi domini. Il codice nell'assembly viene quindi compilato dal compilatore Just-in-time (JIT).
  • Codice JIT e il metodo LCG eseguire una chiamata di interfaccia.

Problema 2

Quando si esegue l'applicazione su un computer che utilizza un'elevata quantità di memoria, l'applicazione si blocca. Se si esegue il debug del problema utilizzando lo strumento WinDbg.exe, si noterà che si verifica un blocco di messaggi non consegnati su due thread in un dominio applicazione.

Cause

Causa del problema 1

Il danneggiamento dei dati si verifica perché stub common language runtime (CLR) funzione non è più in memoria vincolata dopo un dominio applicazione viene riciclato. La funzione è stata generata dinamicamente.

Causa del problema 2

L'applicazione si blocca perché un thread Ottiene un blocco per eseguire la funzione m_prCachedMethodPermissionsLock. Quindi, il thread sospeso per partecipare a garbage collection e non rilascia il blocco. Tuttavia, un altro thread è in modalità di cooperazione nello stesso dominio dell'applicazione continua di attesa per il blocco.

Risoluzione

Informazioni sull'hotfix

È disponibile un hotfix supportato. Questo hotfix è tuttavia destinato esclusivamente alla risoluzione del problema descritto in questo articolo. Applicare questo aggiornamento rapido (hotfix) solo per i sistemi in cui si verificano il problema descritto in questo articolo. Questo aggiornamento rapido (hotfix) potrebbe essere eseguiti ulteriori test. Se il problema non causa gravi difficoltà, si consiglia di attendere il successivo aggiornamento software contenente tale aggiornamento rapido (hotfix). Per scaricare questo aggiornamento rapido (hotfix) da Microsoft Developer Network (MSDN) Code Gallery, visitare il seguente sito Web Microsoft:
http://code.msdn.microsoft.com/KB975954
Nota MSDN Code Gallery vengono visualizzate le lingue per cui l'aggiornamento rapido (hotfix) è disponibile. Se non viene visualizzata la lingua desiderata nell'elenco, è perché la pagina risorse Code Gallery non è disponibile per tale lingua.

In alternativa, è possibile scaricare questo hotfix cumulativo dal seguente sito Microsoft Web:
https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=26146

Prerequisiti

È necessario disporre di .NET Framework 2.0 Service Pack 2 (SP2) o .NET Framework 3.5 Service Pack (SP1) per applicare questo hotfix.

Necessità di riavvio

Non è necessario riavviare il computer dopo avere applicato questo aggiornamento rapido (hotfix) se non viene utilizzata alcuna istanza di .NET Framework.

Informazioni sulla sostituzione della correzione

Questo aggiornamento rapido (hotfix) non sostituisce altri aggiornamenti rapidi (hotfix).

Informazioni sui file

La versione in lingua inglese di questo hotfix presenta gli attributi del file (o attributi successivi) elencati nella tabella riportata di seguito. Le date e ore dei file elencate in ora UTC (UTC). Quando si visualizzano le informazioni sul file, viene convertita in ora locale. Per calcolare la differenza tra ora UTC e quella locale, utilizzare la scheda fuso orario nell'elemento di Data e ora nel Pannello di controllo.
Per tutte le versioni x 86 le versioni di Windows Vista SP2 e Windows Server 2008 SP2
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensioni fileDataOra
Mscorlib.dll2.0.50727.44084,550,65621 Ottobre 200907: 24
Mscordacwks.dll2.0.50727.4408989,00021 Ottobre 200907: 24
Mscorwks.dll2.0.50727.44085,818,68821 Ottobre 200907: 24
Sos.dll2.0.50727.4408388,92021 Ottobre 200907: 24
Per tutte le versioni x 64 basati su versioni di Windows Vista SP2 e Windows Server 2008 SP2
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensioni fileDataOra
Mscorlib.dll2.0.50727.44084,567,04021 Ottobre 200907: 24
Mscordacwks.dll2.0.50727.44081,758,53621 Ottobre 200907: 24
Mscorwks.dll2.0.50727.440810,061,12021 Ottobre 200907: 24
Sos.dll2.0.50727.4408485,17621 Ottobre 200907: 24
Per tutte le versioni basate su Itanium di Windows Server 2008 SP2
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensioni fileDataOra
Mscorlib.dll2.0.50727.44084,009,98421 Ottobre 200907: 26
Mscordacwks.dll2.0.50727.44083,085,12821 Ottobre 200907: 26
Mscorwks.dll2.0.50727.440820,173,12021 Ottobre 200907: 26
Sos.dll2.0.50727.4408872,76021 Ottobre 200907: 27
Per tutte le versioni x 86 le versioni di Windows 7.0
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensioni fileDataOra
Mscorlib.dll2.0.50727.49344,550,65603-Nov-200923: 27
Mscordacwks.dll2.0.50727.4934995,16003-Nov-200923: 27
Mscorwks.dll2.0.50727.49345,816,65603-Nov-200923: 27
Sos.dll2.0.50727.4934388,93603-Nov-200923.28
Per tutte le versioni x 64 basati su versioni di Windows 7.0 e Windows Server 2008 R2
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensioni fileDataOra
Mscorlib.dll2.0.50727.49344,567,04003-Nov-200923: 33
Mscordacwks.dll2.0.50727.49341,764,16803-Nov-200923: 33
Mscorwks.dll2.0.50727.493410,058,56003-Nov-200923: 33
Sos.dll2.0.50727.4934485,19203-Nov-200923: 34
Per tutte le versioni basate su Itanium di Windows Server 2008 R2
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensioni fileDataOra
Mscorlib.dll2.0.50727.49344,009,98403-Nov-200923: 32
Mscordacwks.dll2.0.50727.49343,085,64003-Nov-200923: 32
Mscorwks.dll2.0.50727.493420,164,94403-Nov-200923: 32
Sos.dll2.0.50727.4934872,76003-Nov-200923: 32
Per tutte le versioni x 86 le versioni di Windows XP, Windows Server 2000 e Windows Server 2003
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensioni fileDataOraPiattaforma
Mscordacwks.dll2.0.50727.4408989,00030 Set 200912: 05x 86
Mscorlib.dll2.0.50727.44084,550,65630 Set 200912: 05x 86
Mscorwks.dll2.0.50727.44085,818,68830 Set 200912: 05x 86
Sos.dll2.0.50727.4408388,92030 Set 200912: 05x 86

Per tutte le versioni x 64 basati su versioni di Windows XP, Windows Server 2000 e Windows Server 2003
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensioni fileDataOraPiattaforma
Mscordacwks.dll2.0.50727.44081,758,53629-Set-200923: 57x 64
Mscorlib.dll2.0.50727.44084,567,04029-Set-200923: 51x 64
Mscorwks.dll2.0.50727.440810,061,12029-Set-200923.55x 64
Sos.dll2.0.50727.4408485,17629-Set-200923: 52x 64

Per tutte le versioni basate su Itanium di Windows XP, Windows Server 2000 e Windows Server 2003
Riduci questa tabellaEspandi questa tabella
Nome del fileVersione del fileDimensioni fileDataOraPiattaforma
Mscordacwks.dll2.0.50727.44083,085,12830 Set 2009/ 05 / 01IA-64
Mscorlib.dll2.0.50727.44084,009,98430 Set 200901: 03IA-64
Mscorwks.dll2.0.50727.440820,173,12030 Set 200900: 58IA-64
Sos.dll2.0.50727.4408872,76030 Set 200901: 02IA-64

Status

Microsoft ha confermato che si tratta di un problema con i prodotti elencati nella sezione "Si applica a".

Proprietà

Identificativo articolo: 975954 - Ultima modifica: domenica 14 febbraio 2010 - Revisione: 2.2
Le informazioni in questo articolo si applicano a:
  • Microsoft .NET Framework 2.0 Service Pack 2
  • Microsoft .NET Framework 3.5 Service Pack 1
  • Microsoft .NET Framework 2.0
Chiavi: 
kbmt kbexpertiseadvanced kbsurveynew kbqfe kbhotfixserver KB975954 KbMtit
Traduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 975954
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com