Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Calling C++ dll from C# - how to debug?
Message
From
20/10/2017 08:30:51
 
General information
Forum:
C#
Category:
Coding, syntax and commands
Miscellaneous
Thread ID:
01655067
Message ID:
01655106
Views:
59
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
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform