Mag 27 2011

Invocare una DLL sviluppata in C_C++ da C# (visual studio)

Category: TecnologiaAntonio @ 14:54


Nello sviluppo di applicazioni, spesso ci troviamo a sviluppare in diversi ambienti e linguaggi cercando di sfruttare al pieno le potenzialità dei linguaggi stessi. Nella procedura seguente vi illustrerò come sviluppare una DLL in C o C++ ed utilizzarla nell’ambiente di sviluppo Visual Studio attraverso il linguaggi C#.

Nel file c/c++ che si vuole importare, per ogni funzione che si vuole rendere visibile, deve essere scritta nel seguente modo:

extern “C” __declspec(dllexport) int funzioneEsempioSomma(int a,int b){

return a+b;

}

La “funzioneEsempioSomma“ potrà essere invocata da C#.

Questa procedura deve essere applicata ad ogni funzione che si vuole richiamare da c#.

Fatto ciò si crea la DLL in C/C++ (supponiamo di creare la DLL con nome funzioni.dll).

In c# per invocare la funzione contenuta nella DLL bisogna utilizzare la seguente sintassi:

suppuoniamo di creare la classe IMPORTA

public class IMPORTA

{

[DllImport(”pathFileDLL//funzioni.dll”)]

public static extern int funzioneEsempioSomma(int ww,int hh);

public IMPORTA (){

}

public int TestSomma (){

return funzioneEsempioSomma(10,20);

}

}

Commenti chiusi.