Với tuyên bố C API này, nó sẽ được nhập vào C# như thế nào?Làm cách nào để nhập const char * API thành C#?
const char* _stdcall z4LLkGetKeySTD(void);
tôi đã có thể để có được điều này cho đến nay:
[DllImport("zip4_w32.dll",
CallingConvention = CallingConvention.StdCall,
EntryPoint = "z4LLkGetKeySTD",
ExactSpelling = false)]
private extern static const char* z4LLkGetKeySTD();
Làm cách nào để biết phương thức Marshal.Free * nào nên được sử dụng? –
@thelaughingdm, nó phụ thuộc vào cách bộ nhớ được cấp phát. Marshal.FreeCoTaskMemAlloc giải phóng CoTaskMemAlloc gốc. Mỗi cái đều hoạt động với một phương thức riêng – JaredPar