Voici le problème - J'ai une bibliothèque de traitement d'image C que j'ai besoin d'utiliser à partir de l'application C#. Le manque d'expérience avec DllImport me semble dur pour le moment.C# Marshalling char ** et unsigned char **
La fonction que je dois utiliser ressemble à:
IMAGEPROCESS_API const int importImage
(
const unsigned char* image,
const char* xmlInput,
unsigned char** resultImage,
char** xmlOutput
);
Ainsi, il accepte les données d'images brutes, contenant les paramètres xml et l'image width'height puis revenir image traitée et certains rapports xml.
Pour l'instant im essayant d'aborder comme ceci:
[DllImport("imageprocess.dll",CallingConvention = CallingConvention.StdCall,EntryPoint = "importImage",CharSet=CharSet.Ansi)] private static extern int ImportImageNative(IntPtr imageData, String xmlDescriptor, out IntPtr processedImage, out IntPtr xmlOut);
mais sans aucun succès.
Des suggestions comment devrait-il être fait?
Edit: toujours pas de chance (( fait par désordre C++ CLI pour l'instant
Pouvez-vous fournir plus de détails sur « sans succès »? – Dialecticus
Oh, il compile et s'exécute mais rencontre une violation d'accès, donc quelque chose ne va vraiment pas. J'ai vérifié double entrée xml, donc je crois que le problème est avec la sortie – ALOR