C# et libraries natives

Est-ce que quelqu’un a une idee sur le comment on peut linker/utilise une lib native (ecrite en C tout ca) avec C# ?
Un peu comme avec JNI quoi…
Parce que la ca fait super longtemps que je cherche (genre 20min quoi )et je ne trouve pas

merci !

(et ca peut etre une DLL, mais ca m’arrange pas )

A vu de nez, tu peux po trop…

Si t’as les sources, tu peux tenter de les recompiler en c .net (ben vi y a un compilo pour ca)

Tu peux a 100%. J’ai utilise des compresseur MP3, et autres outils, ou meme des tonnes de fonctions natives win32. Tu utilise DllImport dans System.Runtime.InteropServices ou un truc comme ca.

En gros tu definit ta fonction avec

[DllImport(Nomdeladll)]
public extern LaFonction(…)

avec d’autres options de marshalling genre structlayout ou marshalas.

Exemple avec une fonction win32:

using System.Runtime.InteropServices;    [DllImport("advapi32.dll")] public static extern bool GetUserName( _  Byte[] lpBuffer, int nSize); //... Byte[] b=new Byte[100]; int n=100; bool rc=GetUserName(b, n); //kaboom![/quote][i]Ce message a été édité par GloP le 10/07/2003[/i]

/me va se cacher…
Et en plus, en y reflechissant a 2 fois, je l’avais vu ca bouh

donc c’est pour une DLL uniquement ?
ok…
je va me debrouille

T’as d’autres possibilite il me semble, regarde dans le system.runtime.interopmachin pour plus d’infos. Et cherche google pour pinvoke, marshalling, dllimport, ce genre de trucs. En regle generale on peut tout faire en C# (qu’on peut faire en C++, sauf l’heritage multiple), parfois dans certains cas on en chie, mais ca passe toujours.
Ce message a été édité par GloP le 10/07/2003

C bô un glop qui pense

Marci.
Ca va forcement allez plus vite maintenant que j’ai les bon mots qui vont bien