Bonjour,

J'utilise la fonction d'une libraire (DLL) qui me retourne un tableau de chaines de caractères définie comme ceci en C :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
const char**  cameraList()
Dans le code C# elle est définie comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
[DllImport("lib.dll")]
public static unsafe extern IntPtr* cameraList();
Et pour parcourir les éléments du tableau j'ai code ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
unsafe
{
	IntPtr* p = cameraList();
	while (*p != IntPtr.Zero)
	{
		Message(Marshal.PtrToStringAnsi(*p));
		p++;
	}
}
Tout marche bien mais y a t-il un moyen de faire un peu plus "safe" ?