Compte tenu de cette déclaration de l'API C, comment serait-il importé en C#?Comment faire pour importer const char * API en C#?
const char* _stdcall z4LLkGetKeySTD(void);
Je suis en mesure d'obtenir jusqu'ici:
[DllImport("zip4_w32.dll",
CallingConvention = CallingConvention.StdCall,
EntryPoint = "z4LLkGetKeySTD",
ExactSpelling = false)]
private extern static const char* z4LLkGetKeySTD();
Comment savez-vous quelle méthode Marshal.Free * devrait être utilisée? –
@thelaughingdm, cela dépend de la façon dont la mémoire a été allouée. Le Marshal.FreeCoTaskMemAlloc libère un CoTaskMemAlloc natif. Chacun travaille avec une méthode native particulière – JaredPar