Salut a tous,
J ai un petit probleme avec ma dll code en C. Elle retourne un char *
et je cherche a recuperer en csharp le retour de cette fonction. Voici
ma declaration
[DllImport("myDll.dll")]
public static extern unsafe
string myFunction([MarshalAs(UnmanagedType.LPArray)] byte[] myData, int
width, int height);
Donc elle prend en parametre un tableau de byte et cela ne pose aucun probleme;
Voici la fonction code en C :
char *myFunction(char *myData, int Arg_width, int Arg_height)
{
char *myNewData =malloc(strlen(myData) * sizeof (char));
//La fonction remplie myNewData;
return (myNewData)
}
Ce qui me parait etrange et qui explique pk je psote du code en C c est
que ca marche des fois et d autre "non" comme si j avais rate un
malloc. APres avoir bien verifie je trouve rien de suspect et donc jeme
suis dit que cela pouvait venir du cast entre le string et le char *.
Si quelqu un a quelques idees pour m expliquer ce qui pourrait ne pas
aller je suis preneur
Merci par avance