C に func を使用するアンマネージ DLL があります。
char* My_Func(char* data, int input_length, int output_length);
この機能で私は持っています
result = (char*)malloc(output_lenght);
strcpy(result,test_char);
return(result);
C#で私はそれをインポートします
[DllImport(@"libsmev.DLL", CharSet = CharSet.Ansi)]
public static extern IntPtr My_Func([MarshalAs(UnmanagedType.LPStr)]string data, int input_length, out int output_length);
そして、それを呼び出します
IntPtr result = My_Func (n1, n1.Lenght,n2);
char* または IntPtr を解放するには?
Marshal.FreeHGlobal(IntPtr) と Marshal.FreeCoTaskMem(IntPtr) は機能しません。