2010-04-26 48 views
-1
[DllImport(pathimportdll)] 
static extern int InitiateSession(ref _SESSION_INFO sinfo, ref _DEVICE_INFO pDevInfo); 

[DllImport(pathimportdll)] 
static extern int StartAcquisition(); 

正确导入DLL函数。调用之后,应用程序在tcscpy.inl中声明消息Expression:(L“Buffer is too small”& & 0)。在C#代码中使用C++ DLL函数的问题

+1

一些更多的代码将是有用的。如果DLL函数正确导入,为什么你会得到一个断言? – RvdK 2010-04-26 10:15:45

+0

是什么让你认为这是一个DLL问题?断言似乎来自memcpy或strcpy类型的函数。 – Arkadiy 2010-04-26 10:21:37

+3

如果没有看到函数和结构的原始声明以及您的C#声明,则无法提出解决方案。 – logicnp 2010-04-26 11:27:27

回答

0

*

“DLL函数正确导入”

*

这是最有可能值得商榷。一种确定的方法是注释掉你的dllimport代码,而不是调用它。如果你不要得到错误,那么人们很可能会认为你的导入声明不完全正确。