Spesso un programmatore. NET deve affrontare il compito di utilizzare la funzionalità di una DLL dinamica scritta da un altro sviluppatore in codice non gestito. A volte le funzionalità di questa libreria possono essere molto, molto estese. Registra manualmente ogni classe, funzione, costante, ecc. nel tuo progetto. - un tempo molto lungo. Fortunatamente, ci sono strumenti che automatizzano parzialmente questo processo. Parleremo di uno di loro.
Necessario
- - PC con Visual Studio 2008/2010;
- - la rete.
Istruzioni
Passo 1
Se hai una libreria dinamica *.dll scritta in codice non gestito, ad esempio, in C o C ++, così come i suoi file di intestazione, e devi dichiarare un intero gruppo di costrutti di libreria nel tuo progetto, allora un ottimo la soluzione per te può essere lo strumento PInvoker. PInvoker è distribuito gratuitamente come estensione per l'IDE di Visual Studio (sono supportate le versioni 2005, 2008 e 2010) e come applicazione autonoma.
Lavorare con esso è semplice e conveniente. PInvoker importa le definizioni PInvoke per il codice C# o VB. NET gestito dai file di intestazione C/C++ e dalla DLL associata. Devi solo scegliere da un elenco di funzioni, strutture, enumerazioni, costanti, delegati e così via disponibili. richiesto e importato nel progetto.
Per prima cosa devi scaricare e installare PInvoker. Scarica il programma di installazione PInvoker.msi o l'estensione PInvokerAddin.msi per Visual Studio dal sito Web ufficiale. Penso che questo non dovrebbe essere un problema. Basta eseguire il file desiderato e seguire le istruzioni.
Passo 2
Diamo un'occhiata a un esempio di come lavorare con questo utile strumento. Avvia Visual Studio, crea un nuovo progetto. È stato aggiunto un nuovo elemento al menu Strumenti -> Strumenti: PInvoker. Fare clic su di esso e si aprirà la finestra delle impostazioni del componente aggiuntivo PInvoker. Seleziona la lingua del tuo progetto Lingua: C# o VB. NET. Nell'elenco a discesa Profili, seleziona Modifica profili.
Passaggio 3
Si aprirà la finestra di gestione del profilo. Seleziona Crea un nuovo profilo di importazione e fai clic su Avanti.
Passaggio 4
Ora devi aggiungere i file di intestazione. Puoi trascinarli e rilasciarli nella finestra della procedura guidata dei profili di PInvoker. Quindi, specificare la directory in cui sono archiviati questi file.
Passaggio 5
Il passaggio successivo consiste nello specificare la libreria dinamica stessa. Puoi anche trascinarlo in sicurezza con il mouse nella finestra della procedura guidata del profilo PInvoker.
Passaggio 6
Dopo aver fatto clic sul pulsante Fine, inizierà il processo di importazione delle definizioni dalla libreria dinamica selezionata. Il buon esito dell'operazione sarà indicato dalla scritta Importazione riuscita e dall'elenco dei nomi delle funzioni della DLL che compare nel campo di sinistra.
Passaggio 7
Ora puoi importare facilmente le definizioni di PInvoke nel tuo progetto. Nel campo di sinistra (1), nel campo Tipo, selezionare il tipo: funzione, procedura, struttura, enumerazione, costante, delegato, ecc. Nel campo Nome selezionare il nome della struttura richiesta. Con un solo clic, la sua descrizione apparirà nel campo centrale della finestra di PInvoker (2). Double - aprirà la sua definizione nel file di intestazione. Facendo clic sul pulsante Inserisci definizione (3) si inserirà la definizione nel progetto C# / VB. NET. Ora puoi utilizzare la funzione DLL importata nel tuo progetto.