kyfranBibax
Messages postés26Date d'inscriptionmercredi 11 mai 2005StatutMembreDernière intervention 6 janvier 2008
-
1 juin 2005 à 16:49
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 2012
-
3 juin 2005 à 22:25
Coucou,
J'ai un petit problème avec l'utilisation d'une dll (c++) que j'ai crée.
La dll se compile sans problème et j'ai une fonction que je peux utilisée.
Dans mon code c#, j'apelle bien ma Dll (une autre est apellé en même temps et tourne bien) mais lorque j'utilise la fonction,
une exception arrive :
System.NullReferenceException: Object reference not set to an instance of an object.
at RasterChart2BSB.RasterChart2bsb.GenPal(String fileInput, String fileOutput, Int32 colors)
Voici le code de l'apl :
GenPal("coucou","coucou",128); //les paramètres ne
correspondent à rien ici mais j'ai fait l'essai avec des bons
Mon problème est que je ne sais pas si cette exception est dûe à mon c# ou à mon code de Dll.
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 201241 1 juin 2005 à 18:51
Salut,
J'avais pose la meme question ici mais aucune reponse helas..
Si tu as des fonctions "unmanaged" dans le constructeur essaye de les appeller en dehors du ctor..ca peut marcher, mais ca n'explique pas le probleme.. Si tu trouves la reponse ca m'interesse, a+
kyfranBibax
Messages postés26Date d'inscriptionmercredi 11 mai 2005StatutMembreDernière intervention 6 janvier 2008 3 juin 2005 à 12:25
Coucou,
Tout d'abord, je dois t'avouer que mon NullReferenceException était
bien dûe à une non initialisation de variable(en fait init mais à
Null... et pas de valeur après...).
Mais avant d'avoir trouvé ce problème, je me suis aperçu que je ne
passais pas dans le constructeur, ni dans ma fonction
GeneratePalette(...) => vu que myCreatePal n'était pas crée, je
devais avoir un autre NullReferenceException.
C'est peut-être ce dernier qui t'intéresse.
En fait, les paramètres de mon prog c# était en string et ceux de ma
Dll en CString => pb de conversion dont tu ne peux te rendre compte.
J'ai donc passé les param de ma Dll en char* que je convertis ensuite en CString.
En espérant que cela peut t'aider.
Sinon, va sur le forum de cppfrance.com car il m'ont bien aidé. En fait c'était plus un pb de c++ que C#...
J'ai posté mon erreur là-bas et vas faire un tour, tu auras un peu plus de détails.
Merci de ton soutien en tout cas et bon courage.