jimbabwe
Messages postés2Date d'inscriptiondimanche 3 avril 2005StatutMembreDernière intervention 3 avril 2005
-
3 avril 2005 à 12:48
jimbabwe
Messages postés2Date d'inscriptiondimanche 3 avril 2005StatutMembreDernière intervention 3 avril 2005
-
3 avril 2005 à 12:51
bonjour,
voila je débute en C# et je désire utilisé une dll, dont je possede le code(ce n'est pas moi qui l'ait développé) et que je compile sous VC++ .Net 2003. Jusque la tout va bien, ensuite je désire l'exploiter en C# ...et la à chaque appel des methodes de la dll il me retourne une valeur null....je me suis laisser dire que c'est la facon dont j'avais créé mes structures qui n'allait pas bien.
voila comment la structure en C++ que j 'aimerai convertir en C# afin de passer les mêmes type d'objet à la dll...
/*****************************************/
/*C# Version(avec qlq appels aux methodes de la dll.*/
/*****************************************/
[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Unicode)]
public struct TGrfFile
{
public uint compressed_len_aligned;
public uint compressed_len;
public uint RealLen;
public uint pos;
public byte flags;
public uint hash;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 100)]public char name;
public char[] data;
public IntPtr next;
public IntPtr prev;
}
[StructLayout(LayoutKind.Sequential,CharSet=CharSet.Unicode)]
public class TGrf
{
public string filename;
public uint len;
public uint TheType;
public uint version;
public uint nfiles;
public TGrfFile[] files;
public TGrfFile first;
public TGrfFile last;
public byte allowCrypt;
public IntPtr f;
public byte allowWrite;
public IntPtr zbuf;
}