新人求助:关于dll的调用
本人c#一窍不通,只会c,c++和java。
现在有个任务,希望用c#调用一些我们用c写的接口。
dll函数如下:
int GetVersion(unsigned char *pbyMajor,
unsigned char *pbyMinor,
unsigned long *piRevision);
c#中调用:
public class Test
{
[DllImport("test.dll", EntryPoint = "GetVersion",
CharSet = CharSet.Ansi,
CallingConvention = CallingConvention.StdCall)]
public static extern int GetVersion(ref string pbyMajor,
ref string pbyMinor,
ref string piRevision);
}
main中调用:
string t1 = "";
string t2 = "";
string t3 = "";
int r = Test.GetVersion(ref t1, ref t2, ref t3);
但是获取到的t1,t2,t3内容是不正确的,所以不知道是什么问题,这三个参数都属出参。
谢谢各位。