在C#,Vb.net中为c ++导入的函数创建包装器

时间:2017-10-30 12:30:59

标签: c# vb.net unmanaged

我有导出的c ++函数,如下所示:

extern "C" __declspec(dllexport) LPCWSTR Function(void)

但是无法在vb.net中得到答案。 总是得到内存损坏的错误。

我可以像这样执行导入的代码:

extern "C" __declspec(dllexport) int Function2(wchar_t*)

有人可以帮忙吗?

已经找到解决方案。

对于我的模板,它看起来像:

    <DllImport(DllName)>
    Protected Shared Function Function() As IntPtr
    End Function

    Public Shared Function AliasForFunction() As String
        Return Marshal.PtrToStringAuto(Function())
    End Function

0 个答案:

没有答案