C++ Qt创建者和Kinect:错误:C1083:无法打开包含文件:“NuiApi.h”
我正在尝试用GUI构建Kinect应用程序,所以我自然选择使用Qt。我遵循了Kinect开发者工具包提供的Kinect示例,并在VisualStudio2010中运行了该示例,结果很好。但是,当我将项目导出到Qt creator并尝试在那里运行它时,我得到了以下错误: C:\KinectProjects\ColorBasics-D2D\ColorBasics.h:10:错误:C1083:无法打开包含文件:“NuiApi.h”:没有这样的文件或目录 这是我的.pro文件:C++ Qt创建者和Kinect:错误:C1083:无法打开包含文件:“NuiApi.h”,c++,visual-studio-2010,qt,kinect,C++,Visual Studio 2010,Qt,Kinect,我正在尝试用GUI构建Kinect应用程序,所以我自然选择使用Qt。我遵循了Kinect开发者工具包提供的Kinect示例,并在VisualStudio2010中运行了该示例,结果很好。但是,当我将项目导出到Qt creator并尝试在那里运行它时,我得到了以下错误: C:\KinectProjects\ColorBasics-D2D\ColorBasics.h:10:错误:C1083:无法打开包含文件:“NuiApi.h”:没有这样的文件或目录 这是我的.pro文件: # ----------
# ----------------------------------------------------
# This file is generated by the Qt Visual Studio Add-in.
# ------------------------------------------------------
TEMPLATE = app
TARGET = ColorBasics-D2D
DESTDIR = ./Debug
QT += core multimedia opengl widgets gui sensors concurrent multimediawidgets
CONFIG += debug
DEFINES += _WINDOWS QT_MULTIMEDIA_LIB QT_OPENGL_LIB QT_SENSORS_LIB QT_WIDGETS_LIB QT_CONCURRENT_LIB QT_MULTIMEDIAWIDGETS_LIB
INCLUDEPATH += $(NOINHERIT)
LIBS += -L"$(NOINHERIT)" \
-lkernel32 \
-luser32 \
-lwinspool \
-lcomdlg32 \
-ladvapi32 \
-lshell32 \
-lole32 \
-loleaut32 \
-luuid \
-lodbc32 \
-lodbccp32 \
-lKinect10 \
-lopengl32 \
-lglu32
DEPENDPATH += .
MOC_DIR += ./GeneratedFiles/debug
OBJECTS_DIR += debug
UI_DIR += ./GeneratedFiles
RCC_DIR += ./GeneratedFiles
include(ColorBasics-D2D.pri)
下面是ColorBasic.h中include的外观:
#pragma once
#include "resource.h"
#include "NuiApi.h"
#include "ImageRenderer.h"
class CColorBasics
{
static const int cColorWidth = 640;
static const int cColorHeight = 480;
static const int cStatusMessageMaxLen = MAX_PATH*2;
public:
CColorBasics();
~CColorBasics();
static LRESULT CALLBACK MessageRouter(...);
LRESULT CALLBACK DlgProc(...);
int Run(HINSTANCE hInstance, int nCmdShow);
private:
HWND m_hWnd;
bool m_bSaveScreenshot;
// Current Kinect
INuiSensor* m_pNuiSensor;
// Direct2D
ImageRenderer* m_pDrawColor;
ID2D1Factory* m_pD2DFactory;
HANDLE m_pColorStreamHandle;
HANDLE m_hNextColorFrameEvent;
void Update();
HRESULT CreateFirstConnected();
void ProcessColor();
void SetStatusMessage(WCHAR* szMessage);
HRESULT SaveBitmapToFile();
};
我将其与VisualStudio的库路径进行了比较,它们都链接了正确的库。似乎我需要在INCLUDEPATH行之后放置一个include路径。那应该是什么呢?我试图将NuiApi.h的路径放在那里,但它仍然有相同的错误。或者错误是由不同的原因造成的?我正在使用Qt5.5。谢谢 张贴代码中的实际include行。可能存在路径组件,您需要将一个父目录添加到INCLUDEPATH.Updated!请参阅上面的代码,这可能无关紧要,但请尝试将include NuiApi.h更改为include,并将头的路径放置在INCLUDEPATH中。引号中的文件可能表示相对于当前目录(正在编译的文件目录)的搜索,而尖括号表示系统头文件。请注意,某些编译器可能不会以相同的方式进行区分。此外,标题的路径是否包含空格?如果是,您是否在项目文件中对此进行了说明?