FIX: Applicazioni personalizzate che utilizzano Visual Studio per applicazioni Runtime di Visual Basic potrebbe non essere possibile compilare macro o l'esecuzione delle macro

Sintomi

Si consideri lo scenario seguente:
  • Creare un'applicazione personalizzata mediante l'utilizzo di Microsoft.NET Framework 2.0.
  • L'applicazione personalizzata utilizza Microsoft Visual Studio per il Runtime di Visual Basic Applications (VSA).
  • Eseguire l'applicazione personalizzata su un sistema che è stato aggiornato per eseguire una versione successiva di Microsoft.NET Framework common language runtime (CLR).
In questo scenario, l'applicazione personalizzata potrebbe comportarsi in modo non corretto o potrebbe generare errori. Questi problemi si verificano quando si tenta di compilare macro o quando si tenta di eseguire macro nell'applicazione personalizzata.

Quando si sviluppa l'applicazione personalizzata utilizzando VSA, si verifichi il seguente problema. Quando l'applicazione personalizzata chiama il metodo Microsoft.VisualBasic.Vsa.VsaEngine.Compile , viene generata un'eccezione dal Runtime di Visual Basic VSA all'host. L'host può intercettare l'eccezione e l'utente che venga visualizzato il seguente messaggio di errore:
È stato effettuato un tentativo di caricare un programma con un formato non corretto. (Eccezione da HRESULT: 0x8007000B)
In alternativa, l'host può ignorare l'eccezione e può verificarsi uno dei seguenti sintomi:
  • Host di un errore imprevisto quando si tenta di eseguire la macro che l'utente appena compilato.
  • L'host non gestisce le macro in qualsiasi modo.
In questo caso, Common Language Runtime verrà chiusa l'applicazione perché l'applicazione è verificata un'eccezione non gestita.

Quando si tenta di eseguire macro nell'applicazione personalizzata, si verifichi uno o più dei seguenti sintomi:
  • Viene visualizzato un messaggio di errore Impossibile generata o eseguire una macro.
  • Viene visualizzato un messaggio di errore che non è possibile caricare una macro o un assieme.
  • L'applicazione host potrebbe non avviarsi oppure potrebbe chiudersi inaspettatamente.
  • Anche se l'applicazione host non segnala un errore, la macro non viene eseguita e viene visualizzata l'applicazione a nulla.

Causa

Questo problema si verifica a causa di una recente modifica di progettazione nelle workstation runtime CLR (mscorwks. dll) per le build di.NET Framework 2.0 successivi a 2.0.50727.300. Questa modifica ha introdotto un problema di compatibilità per il motore di Runtime di Visual Basic (Vsavb7rt.dll) utilizzato da VSA. Il problema impedisce degli assembly generati correttamente durante l'operazione di compilazione macro beng.

Questo problema potrebbe comportare il messaggio di errore di eccezione menzionato nella sezione "Sintomi" deve essere restituito all'applicazione host. L'applicazione host può segnalare l'errore all'utente in qualche modo. In alternativa, l'applicazione host può generare un'eccezione e chiusa in modo imprevisto.

Nota: Applicazioni personalizzate che utilizzano completi Microsoft Visual Studio per applicazioni Software Development Kit (SDK) e.NET Framework 1.1 non si verificano questo problema. Questo problema si verifica solo nelle applicazioni host che utilizzano il runtime VSA incluso con.NET Framework 2.0.

Risoluzione

Informazioni sull'hotfix



Un hotfix supportato è disponibile da Microsoft. Tuttavia, questo hotfix è destinato esclusivamente alla correzione del problema descritto in questo articolo. Applicare questo hotfix solo ai sistemi in cui si verificano questo problema specifico. Questo hotfix potrebbe essere sottoposto ad ulteriori test. Se il problema non causa gravi difficoltà, si consiglia di attendere il successivo aggiornamento software contenente tale hotfix.

Per scaricare questo hotfix da MSDN Code Gallery, visitare il seguente sito Web Microsoft:


Nota: MSDN Code Gallery vengono visualizzate le lingue per cui è disponibile l'hotfix. Se non viene visualizzata la lingua elencata, è perché la pagina delle risorse di Code Gallery non è disponibile per tale lingua.


Nota: Se si verificano ulteriori problemi o se è necessaria attività di risoluzione aggiuntiva, potrebbe essere necessario creare una richiesta di assistenza separata. I costi di supporto normale verranno applicati per eventuali ulteriori domande e problemi che non dovessero rientrare specifico hotfix in questione. Per un elenco completo dei numeri di telefono del servizio clienti Microsoft e supporto tecnico o per creare una richiesta di assistenza separata, visitare il seguente sito Web Microsoft:

Prerequisiti

Non è richiesto alcun prerequisito.

Richiesta di riavvio

Non è necessario riavviare il computer dopo avere applicato questo hotfix.

Informazioni sui file

La versione inglese di questo hotfix presenta gli attributi di file (o attributi successivi) elencati nella tabella riportata di seguito. Le date e ore dei file sono elencate in base al formato UTC (Coordinated Universal Time Coordinated). Quando si visualizzano le informazioni sul file, viene convertito in ora locale. Per calcolare la differenza tra ora UTC e ora locale, utilizzare la scheda fuso orario nell'elemento di data e ora nel Pannello di controllo.
Sistemi operativi precedenti a Windows Vista
Nome del fileVersione del fileDimensione del fileDataOraPiattaforma
Vsavb7rt.dll8.0.50727.2441,330,68816-Nov-200608:06x86
Windows Vista
Nome del fileVersione del fileDimensione del fileDataOraPiattaforma
Vsavb7rt.dll8.0.50727.7841,330,68818-May-200714:07x86

Stato

Microsoft ha confermato che si tratta di un bug nei prodotti Microsoft elencati nella sezione "Si applica a".

Ulteriori informazioni

Per ulteriori informazioni, fare clic sul seguente numero di articolo per visualizzare l'articolo della Microsoft Knowledge Base:

824684 descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software Microsoft

Proprietà

ID articolo: 928208 - Ultima revisione: 31 gen 2017 - Revisione: 1

Feedback