C#-从非托管代码返回类型int *

雷贝利

我正在编写一个小型应用程序,以便通过API(均为64位)与外部设备进行通讯。我从尝试使用的指南中获得了以下方法:

int* GetRevision( void* cu_ptr, int num)

我试图做PinVoke模式:

[DllImport("ABCAPI.dll")]
public static extern IntPtr GetRevision(IntPtr cu_ptr, int num);

我试图将其复制IntPtr到一个int数组:

var check = GetRevision(device_cu_ptr, 1);
int[] arr = new int[10];  
Marshal.Copy(check, arr, 0, arr.Length);

有没有更好的方法在C#中将转换INT*Int[]还是我的代码可能有错误?

雷贝利

好的,好像Marshal.Copy ist是转换这些数据类型的正确方法。

var check = GetRevision(device_cu_ptr, 1);
int[] arr = new int[10];  
Marshal.Copy(check, arr, 0, arr.Length);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

导出托管的C#函数以将更改的char *参数返回到非托管代码

来自分类Dev

从C#调用非托管代码

来自分类Dev

从C#调用C ++ dll。“无法封送'返回值':无效的托管/非托管类型组合。”

来自分类Dev

将 C++ 非托管代码转换为 C#

来自分类Dev

非托管C#与C ++

来自分类Dev

从 c# 调用非托管代码。使用 IntPtr 获取数据

来自分类Dev

使用非托管导出将字符串从 C# 返回到 C++ 返回数字

来自分类Dev

从C#调用非托管C ++

来自分类Dev

从C#调用非托管C ++

来自分类Dev

非托管C ++代码上的NullReferenceException

来自分类Dev

从非托管C ++代码访问WPF

来自分类Dev

C#将指向结构(包含不可复制类型)的指针传递给非托管C ++ DLL

来自分类Dev

对静态库的非托管C#调用

来自分类Dev

在C#中使用非托管DLL

来自分类Dev

c#创建非托管对象*数组

来自分类Dev

是否可以通过[DllImport]属性将Java“非托管”代码导入C#?

来自分类Dev

C#非托管代码调用不起作用:AddConsoleAlias

来自分类Dev

使用C#在非托管代码中将委托传递给回调函数

来自分类Dev

C# 方差返回类型

来自分类Dev

C#返回列表或int

来自分类Dev

C ++至C#代码转换类型

来自分类Dev

从C#通过CLI传递给非托管C ++的引用

来自分类Dev

将结构从非托管C ++传递到C#

来自分类Dev

将回调参数从C#传递到非托管C ++

来自分类Dev

将回调参数从C#传递到非托管C ++

来自分类Dev

从非托管C ++ / CLI调用重载的C#数组访问

来自分类Dev

用于C#使用的非托管C ++包装器

来自分类Dev

什么是“返回” C#的返回类型

来自分类Dev

Microsoft Fake框架是否支持C ++ /非托管代码

Related 相关文章

热门标签

归档