我尝试使用Qt和库开发应用程序以连接到控制外部USB设备的软件服务器。
我创建了一个新的空项目并添加了一个按钮和一个textview。
我还将这些行添加到.pro文件
win32:CONFIG(release, debug|release): LIBS += -L$$PWD/iview/lib/ -liViewXAPI
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/iview/lib/ -liViewXAPId
INCLUDEPATH += $$PWD/iview/include
DEPENDPATH += $$PWD/iview/include
上面提到的路径同时包含.dll和.lib文件。我将该设备与我的设备一起交付给我的机器我确信它可以在Windows 7 x32下运行。我只写了以下三行代码:
ui->pteLog->appendPlainText("Establishing connection to server ....");
int result = iV_ConnectLocal();
ui->pteLog->appendPlainText("Result for connection was: " + QString::number(result));
当我尝试运行我的应用程序时,我在Application Output Window中得到以下输出:
Attempting to open InpOut driver...
Successfully opened inpout32 driver
Invalid parameter passed to C runtime function.
Invalid parameter passed to C runtime function.
Error - RtlWerpReportException failed with status code :-1073741823. Will try to launch the process directly
Closing InpOut driver...
程序崩溃。
是否有可能因为我错误配置Qt与外部库一起使用而发生这种情况?
如果有任何用途,我使用Qt 5.8.0和MinGW 5.3.0。
根据要求,提供了有关该计划和API的更多信息: 功能iV_Connnecthttps://www.smivision.com/)。该服务器通过USB端口控制连接到PC的公司的设备。因此,要控制设备,您需要使用提供的API建立与服务器的连接。所有这一切都适用于笔记本电脑随附的设备和所有安装的软件(公司提供的专有软件),显然连接到设备,工作正常。但是,他们还提供了一个API(称为iViewXApi),以便您可以制作自定义软件。这就是我想要做的。所以我做了一个Qt程序,第一步是简单地连接到服务器。线iV_ConnectLocal就是这样做的。