2010-04-26 6 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 함수를 제대로 가져 오면 왜 ould에 어설 션이 생깁니 까? – RvdK

+0

왜 DLL 문제라고 생각합니까? 주장은 memcpy 또는 strcpy 종류의 함수에서 오는 것으로 보인다. – Arkadiy

+3

함수 및 구조체의 원래 선언과 C# 선언을 보지 않고도 솔루션을 제안하는 것은 불가능합니다. – logicnp

답변

0

*

가장 가능성이 논쟁의 여지가있어 *

을 "DLL의 기능이 제대로 가져올 수 있습니다." 확실한 한 가지 방법은 dllimport 코드를 주석 처리하고 호출하지 않는 것입니다. 을 입력하지 않으면 오류가 발생하므로 가져 오기 선언이 정확하지 않을 수 있습니다.

관련 문제