我有这个方法需要在我的应用程序中调用和使用,但我真的不知道该怎么做。
这是我需要调用的函数。
[DllImport(dll_Path)]
public static extern int DTS_GetDataToBuffer(int Position, int Length, char* Buffer, int* DataRead);
在我的代码中,我有这个功能,但我错过了它的实现。
internal static void GetDataToBuffer(int position, int length, out byte[] data, out int dataRead)
{
unsafe
{
// the code I need
}
}
我认为大部分内容都是不言自明的。我需要实现后一个功能,以便能够将数据读入缓冲区以及读取的数据量(实际上应该与 data.Length 相同,但制造商将此作为单独的选项,所以我需要它)。任何人都可以帮忙吗?这足够清楚吗?
谢谢
编辑:这是 .h 文件中的非托管声明。希望能帮助到你。
extern NAG_DLL_EXPIMP int DTS_GetDataToBuffer(int Position,
int Length,
unsigned char *Buffer,
int *DataRead );
编辑#2:位置 - 开始读取数据的位置。长度 - 要读取的数据量(这将是缓冲区大小)。DataRead - 读取的实际数据大小。