gpt4 book ai didi

c# - 将 IntPtr 转换为 C# 结构指针

转载 作者:搜寻专家 更新时间:2023-10-31 01:43:38 31 4
gpt4 key购买 nike

我有一个非托管 C++ 函数,其内容如下:int myfunction(LPVOID p1, LPVOID p2)

我在 C# 中的包装器采用 extern static int mywrapperFunction(IntPtr p1, IntPtr p2)

在我的包装函数定义中,我想将 IntPtr 推向一个结构。

在 C++ 中:

int myfunction(LPVOID p1, LPVOID p2)
{
(MYFIRSTSTRUCTURE *)abc = (MYFIRSTSTRUCTURE *)p1;
(MYSECONDSTRUCTURE *)efg = (MYSECONDSTRUCTURE *)p1;
//rest of the operation involves this abc and efg
}

我需要在 C# 中做类似的事情:

int mywrapperFunction(IntPtr p1, IntPtr p2)
{
//how to consume IntPtr p1 and IntPtr p2 for C# structure similar to MYFIRSTSTRUCTURE and //MYSECONDSTRUCTURE
}

最佳答案

处理此问题的正常方法是通过 Marshal.PtrToStructure .

关于c# - 将 IntPtr 转换为 C# 结构指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24791920/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com