Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Calling C++ dll from C# - how to debug?
Message
De
20/10/2017 08:30:51
 
 
Information générale
Forum:
C#
Catégorie:
Code, syntaxe and commandes
Divers
Thread ID:
01655067
Message ID:
01655106
Vues:
58
This message has been marked as a message which has helped to the initial question of the thread.
The only thing I can think of is

Changed
(1) CallingConvention.StdCall
(2) Use IntPtr for the dll return value, then convert IntPtr to string
 //declare string Invoke1 in (addbs(justpath(.cProgramPath)) + "ww_local.dll") as ww_localInvoke string cInvokeString

        [DllImport(@"C:\Program Files (x86)\Siriusware\Pool\ww_local.dll", 
            ExactSpelling = false, 
            CallingConvention = CallingConvention.StdCall, 
            CharSet = CharSet.Auto)]
        static extern IntPtr Invoke1([MarshalAs(UnmanagedType.LPTStr)] String str);
then
string translate  = Marshal.PtrToStringAuto(Invoke1(invoke));

return translate ;
Gregory
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform