0

我目前正在使用 XAudio2 进行音频项目,并且一直在使用 MSVC++ Express 2010。我编写了一些基本功能,我想我会尝试使用 Qt 制作 UI,所以我按照步骤来使用我的 MSVC 版本中的 Qt:

  • 下载 Qt 源代码
  • 使用 cmd 提示符编译 MSVC 中的所有内容
  • 创建一个使用 qmake & nmake 的 Makefile 项目
  • 在我的项目中添加库、包含、dll 的目录

一切正常。

现在,我很想反过来,将我的项目导入 Qt Creator 以轻松使用 Qt 设计器,也因为我只想玩它,看看我是否喜欢它。

因此,我导入了一个使用 XAudio2 制作的简单控制台应用程序,并在 .pro 中添加了 XAudio 包含路径:

INCLUDEPATH += "C:/Program Files/Microsoft DirectX SDK (June 2010)/Include"

我在编译时遇到的问题是:

main.obj:-1: error : LNK2019: unresolved external symbol __imp__CoInitializeEx@8 referenced in function _main
File not found: main.obj

该文件就在那里,编译创建它:

C:\Qt\qtcreator-2.2.1\projects\test-build-desktop\debug

我不知道为什么造物主找不到它......有什么想法吗?当我在 MSVC 中工作时,我需要包含一个会自动包含的库吗?

4

1 回答 1

1

好吧,我找到了答案,但这很难。所以,8小时后,就到了。CoInitializeEx 初始化一个 COM 库以供调用线程使用,以及其他一些东西......

CoInitializeEx 函数参考

以下链接解释了如何在 Qt 中使用 COM 对象。

在 Qt 中使用 COM 对象

基本上,您添加

CONFIG += qaxcontainer

到你的.pro文件

另外,出于某种原因,即使它与此无关,我也不得不使用 jom 因为 nmake 不起作用。

于 2011-07-28T05:13:29.187 回答