【发布时间】:2014-01-07 05:14:03
【问题描述】:
我正在尝试在使用 Visual Studio 2012 的 Qt 5 项目中使用 Nite 2 制作 Kinect 骨架跟踪器。我在项目的属性中包含了所有必要的文件夹。 Qt 工作正常,但对 Nite 的初始化调用总是返回 STATUS_ERROR。我尝试在非 Qt 程序中初始化 Nite,它运行良好,所以问题似乎与 Qt 有关。我能够在 Qt 项目中初始化 OpenNI。
// main.cpp
int main(int argc, char* argv[])
{
QApplication app(argc, argv);
KinectWindow a;
a.show();
return app.exec();
}
// KinectWindow constructor
KinectWindow::KinectWindow(void)
: QWidget()
{
nite::Status status;
status = nite::NiTE::initialize();
if (status == nite::STATUS_ERROR)
{
exit(0);
}
else if (status == nite::STATUS_BAD_USER_ID)
{
exit(0);
}
else if (status == nite::STATUS_OUT_OF_FLOW)
{
exit(0);
}
}
程序总是进入 if(status == nite::STATUS_ERROR)。我尝试将 REDIST 目录的内容复制到项目文件夹,但没有帮助。
【问题讨论】:
-
你试过QtCreator中是否也返回上述错误吗?
-
我尝试为 OpenNI 和 Nite 添加新库,但 Qt 仍然无法识别其中任何一个的头文件。
-
“Qt 仍然无法识别任何一个的头文件”是什么意思?
-
它说没有这样的文件或目录。
-
请按原样粘贴整个错误。另外,在 QtCreator 或 Visual Studio 中?