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);
}
}