Windows 7的QT MSVC2015和Windows套件10
Qt msvc2015 and windows kit 10 for windows 7
我正在尝试移植我在Linux上开发的QT项目。这是我第一次在Windows上构建建筑物,而我无法解决问题的事实可能来自一个非常明显的缺失。
我迄今为止尝试的Windows配置是下一个:
- Windows 10与QT 5.8 MSVC 2015,Windows套件10,QT Creator 4.5
- Windows 7 SP1与QT 5.8 MSVC 2015,Windows套件10,QT Creator 4.6
使用两种配置,我获得了一个可以在主机计算机上成功运行的可执行文件,但是当我在新鲜安装的Windows 10上部署应用程序时,该应用程序启动了几秒钟,然后停止(/crashes?(。但是,错误消息,恢复对话框或事件日志都没有显示任何内容。
在新鲜安装的Windows 7 SP1上,我收到一条错误消息,说找不到CreateFile2的入口点。我知道自Windows 8以来已经添加了此功能,但是我不明白为什么在我的.pro文件中定义了_WIN32_WINNT,尽管我定义了_win32_winnt:
DEFINES += "_WIN32_WINNT=0x0601"
我也尝试了winver的定义,没有成功:
DEFINES += "WINVER=0x0601"
我以为使用此git上可用的依赖项软件没有DLL缺失。我还尝试了"超过折旧"的依赖性沃克(Walker(,该依赖性沃克(Walker(并未显示丢失的libs。
通过进步,谢谢您救我的Windowsians!
好吧,我发现我的项目正在使用的一个静态库之一,并且我通过VS 2017编译的是createfile2参考(使用dumpbin.exe(。我使用正确的_WIN32_WINNT值对其进行了重新编译,还将QT项目新鲜编译。但是,CreateFile2参考仍然存在。
最终,我发现了问题!问题来自我要构建的外部库,然后以静态模式链接到我的最终应用程序。用正确的_WIN32_WINNT重建外部LIB后,它起作用了!希望这个话题能像我这样的winnoob:(
相关文章:
- 用于线程间通信的 Windows 套接字
- 使用 MSVC 套件时,在 Qt 中正确选择编译器
- 在跨平台桌面/移动应用程序套件中使用 ZeroMQ 来解决架构问题
- 使用超强音频套件在音轨之间正确过渡
- Windows 套接字和身份验证构建在包含 Poco-Library 时失败
- 使用 CLion 在不同文件中分离 Boost 测试套件的正确方法
- Windows 7的QT MSVC2015和Windows套件10
- 使用 UDP 协议从 Windows 套接字发送到 Qt 套接字的网络数据包上的结构编码和解码
- Windows 套接字接收标志
- Diehard随机测试套件无法编译
- 在 Travis CI 上运行 C++ 测试时出现问题.Cmake 配置.如何在特拉维斯 ci 上运行测试套件?
- 在Xcode上使用I/O套件的方法时,构建失败将失败
- 使用Boost C 单元测试套件测试非致命错误消息
- Sprite套件 - 播放器使用加速度计的屏幕
- Windows 套接字编程 - 错误代码 0
- 在BOOST test中添加测试套件而不是测试用例
- 谷歌测试开发了几个测试套件
- 使用英特尔编译器套件编译 OpenMPI 应用
- 如何从 c/c++ 与 Oracle 电子商务套件通信
- MS Windows套接字示例对我不起作用