Risoluzione dei problemi generale per .NET Native.NET Native General Troubleshooting

In questo argomento viene descritto come risolvere i problemi che potrebbero verificarsi durante lo sviluppo di app con .NET Native.NET Native.This topic describes how to troubleshoot potential issues that you might encounter when developing apps with .NET Native.NET Native.

  • Problema: la finestra di output di compilazione non viene aggiornata correttamente.Issue: Your build output window isn't properly updated.

    Risoluzione: la finestra di output di compilazione non viene aggiornata correttamente finché non viene completata la compilazione.Resolution: The build output window isn't updated until the build completes. La compilazione può richiedere qualche minuto, quindi è possibile che si verifichi un ritardo nella visualizzazione degli aggiornamenti.Build times may be up to several minutes, so you might experience a delay in seeing the updates.

  • Problema: il tempo di compilazione per la versione finale dell'app per ARM è aumentato.Issue: Your app’s retail build time for ARM has increased.

    Risoluzione: quando si distribuisce un'app nel dispositivo ARM, viene richiamata l'infrastruttura .NET Native.NET Native.Resolution: When you deploy an app to your ARM device, the .NET Native.NET Native infrastructure is invoked. Questa compilazione esegue diverse ottimizzazioni, assicurando al tempo stesso il corretto funzionamento della semantica non statica, ad esempio la reflection.This compilation performs a large number of optimizations while ensuring that non-static semantics such as reflection continue to work. Inoltre, la parte di .NET Framework usata dall'app è collegata staticamente per assicurare prestazioni ottimizzate e deve essere compilata anch'essa in codice nativo.In addition, the portion of the .NET Framework that the app uses is statically linked in for optimal performance and has to be compiled into native code as well. Ecco perché la compilazione richiede più tempo.This is why compilation takes longer.

    Tuttavia, i tempi di compilazione sono ancora compresi nell'intervallo di un minuto rispetto alla compilazione standard della maggior parte delle app in un computer di sviluppo standard.However, compilation times are still within a minute of standard compilation for most apps on a standard development machine. In genere la semplice generazione di immagini native per .NET Framework in un computer di sviluppo standard richiede alcuni minuti.Typically, just generating native images for the .NET Framework on a standard development machine takes several minutes. Anche considerando tutte le ottimizzazioni per il miglioramento del codice generato e includendo .NET Framework, i tempi di compilazione dell'app corrispondono solitamente a un minuto o due.Even with all the optimizations to improve the generated code and with including the .NET Framework, app build times are typically a minute or two.

    Il processo di miglioramento delle prestazioni di compilazione è costante e viene eseguito analizzando la compilazione multithread e altre ottimizzazioni.We are continuing to work on improving compilation performance by investigating multi-threaded compilation and other optimizations.

  • Problema: non si sa se l'app è stata compilata usando .NET Native.NET Native.Issue: You don’t know if your app was compiled using .NET Native.NET Native.

    Risoluzione: se viene richiamato il compilatore .NET Native.NET Native, i tempi di compilazione saranno più lunghi e Gestione attività visualizzerà diversi processi dei componenti .NET Native.NET Native, ad esempio ILC.exe e nutc_driver.exe.Resolution: If the .NET Native.NET Native compiler is invoked, you'll notice longer build times, and Task Manager will show various .NET Native.NET Native component processes such as ILC.exe and nutc_driver.exe.

    Dopo aver compilato correttamente il progetto con .NET Native.NET Native, l'output è disponibile in obj\config\ arch\nomeprogetto.ilc\out. I contenuti del pacchetto nativo finale sono disponibili in bin\arch\config\AppX.After you successfully build your project with .NET Native.NET Native, you'll find the output under obj\config\ arch\projectname.ilc\out. The final native package contents can be found under bin\arch\config\AppX. I contenuti del pacchetto nativo finale sono disponibili in \bin\arch\config\AppX se l'app è stata distribuita.The final native package contents are under \bin\arch\config\AppX if you have deployed the app.

  • Problema: l'app compilata in .NET Native sta generando eccezioni di runtime (in genere eccezioni MissingMetadataException o MissingRuntimeArtifactException) che non sono state generate al momento della compilazione senza .NET Native.Issue: Your .NET Native-compiled app is throwing runtime exceptions (typically MissingMetadataException or MissingRuntimeArtifactException exceptions) that it did not throw when compiled without .NET Native.

    Risoluzione: le eccezioni vengono generate perché .NET Native non ha fornito metadati o il codice di implementazione altrimenti disponibile attraverso la reflection.Resolution: The exceptions are thrown because .NET Native did not provide either the metadata or the implementation code that is otherwise available through reflection. Per altre informazioni, vedere Compilazione e .NET Native. Per eliminare l'eccezione, si deve aggiungere una voce al proprio file di direttive di runtime (rd.xml) in modo che la catena di strumenti di .NET Native possa rendere i metadati o il codice di implementazione disponibile in fase di esecuzione.(For more information, see .NET Native and Compilation.) To eliminate the exception, you have to add an entry to your runtime directives (rd.xml) file so that the .NET Native tool chain can make the metadata or implementation code available at runtime. Sono disponibili due strumenti di risoluzione dei problemi che genereranno la voce necessaria per l'aggiunta del file di direttive di runtime:Two troubleshooters are available that will generate the necessary entry to add to your runtime directives file:

    Per altre informazioni, vedere Reflection e .NET Native.For more information, see Reflection and .NET Native.

Vedere ancheSee Also

Migrazione dell'app di Windows Store a .NET NativeMigrating Your Windows Store App to .NET Native