Impossibile applicare 'System.Runtime.InteropServices.DllImportAttribute' ai metodi istanza

Una routine non condivisa viene dichiarata con .DllImportAttribute

Il Common Language Runtime (CLR) riconosce questo attributo e la sua proprietà EntryPoint come indicazione di una procedura di sostituzione definita in una libreria non gestita a collegamento dinamico (DLL) al di fuori della struttura di .NET Framework. Quando il codice chiama la routine a cui DllImportAttribute viene applicato , Common Language Runtime chiama invece la routine non gestita designata.

Poiché le piattaforme non gestite all'esterno di .NET Framework non supportano procedure non condivise allo stesso modo in .NET Framework, non è possibile interagire con tali piattaforme usando procedure non condivise.

ID errore: BC31529

Per correggere l'errore

  • Se la routine non deve essere applicata singolarmente a ogni istanza della relativa classe o struttura, dichiararla come Shared.

  • Se la routine non può essere Shared, rimuovere DllImportAttribute dalla dichiarazione di questa procedura.

Vedere anche