Bonsoir � tous!
Je dois utiliser une fonction C fournie ayant la signature:
En gros, cette fonction me permet d'obtenir des noms dans un tableau de char (tableau), en lui donnant le nombre de chaines que j'ai mis dans ce tableau(nbElementsTableau), et elle me dit combien de noms au total je suis cens� r�cup�rer(nbElementsARecuperer).
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2 long MaFonctionC(char tableau[][257], const unsigned long nbElementsTableau, unsigned long* nbElementsARecuperer);
Quand je l'appelle, elle me remplit mon tableau, sans le d�passer parce que je lui donne la 1�re dimension en 2�me argument. Libre � moi de l'appeler une 2�me fois si nbElementsARecuperer > nbElementsTableau.
Je dispose de la DLL, mais aussi du .h et du .lib.
J'utilise VS 2005 Pro.
Je voudrais pouvoir utiliser cette fonction en C#.
J'ai donc d�clarer une m�thode C#:
mais je ne parviens pas � relire les valeurs.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3 [DllImport(@"MaDLL.dll",EntryPoint="#1",CallingConvention=CallingConvention.Cdecl)] public extern static Int32 MaFonctionC(out String[] nomsLiaisons, UInt32 lNbElements, out UInt32 lNbLiaisons);
J'ai m�me essay� d'�crire une DLL Win32 qui linke avec le .lib, et qui prend un char* pour renvoyer le tableau de String, mais rien n'y fait.
Si quelqu'un a une id�e, une suggestion, une piste, je suis preneur.
Je vous remercie tous par avance d'avoir pris le temps de me lire !![]()
Partager