紧急求助,关于JNA的一个问题
刚刚接触JNA,,遇到一个问题。调用一个已经封装好的dll,因为觉得直接调用有些复杂(很复杂,函数的很多参数都是结构体),所以我新建了一个C++,在里面写了一个demo(无参函数,用C++的main直接调用,不会报错)。然后,生成一个新的dll文件。然后由JAVA调用。
结果问题出现了,运行java时,报错。而且是直接弹出一个窗口,说
javaw.exe-应用程序错误
应用程序发生异常 unknown software excption (0xc00000fd)……
以前写程序的时候从来没遇到过这样奇怪的问题,搞不清是为啥。走投无路下,就跑来求助了。
由于我不知道怎么查JNA程序错误会在哪,所以只好一行一行删代码查。
结果发现似乎在一开始声明变量的时候就报错了0 0.大概是
CThostFtdcTraderApi *pUserApi[MAX_CONNECTION] = {0};
CSimpleHandler *pSpi[MAX_CONNECTION] = {0};
CTKSCosApi *pCosAPI = NULL;
for (int i=0; i < MAX_CONNECTION; i++ )
{
// create a CThostFtdcTraderApi instance
pUserApi[i] = CThostFtdcTraderApi::CreateFtdcTraderApi("./log");
// create an event handler instance
pSpi[i] = new CSimpleHandler(pUserApi[i]);
这部分的“pUserApi[i] = CThostFtdcTraderApi::CreateFtdcTraderApi("./log");”这里开始报错。这里后面的函数是从dll中调用的 --------------------编程问答-------------------- 求助
补充:Java , Java SE