首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >windeployqt.exe不工作吗?应用程序未启动

windeployqt.exe不工作吗?应用程序未启动
EN

Stack Overflow用户
提问于 2016-01-25 00:29:00
回答 1查看 4.7K关注 0票数 2

我有一个简单的应用程序

代码语言:javascript
复制
QT += core gui network webkitwidgets

我使用windeployqt.exe在我的win-10 64位计算机上生成32位版本。当我把文件夹放在一个win-7 64位桌面上并双击app.exe时,它永远不会启动。

我可以在任务管理器中看到它,但是我不能杀死它,如果我尝试,我不能关闭我在其中双击的资源管理器文件夹。

我检查了通常的平台,ICU,qwindows.dll等等。

http://doc.qt.io/qt-5/windows-deployment.html

编辑精度:

我用默认的32位工具包编译:"build-Test-Desktop_Qt_5_5_1_MinGW_32bit-Release“和"mingw492_32”

我有一个由windeployqt.exe使用--webkit开关生成的包“版本”。我启动一个命令提示符:

代码语言:javascript
复制
> set path=
> set mingw=
  • 然后,我确保在我的环境变量中不再存在Qt/Mingw。
  • 我还将"c:\Qt“重命名为"c:\ __Qt”。
  • 我在桌面上移动我的发行文件夹。
  • 启动release\test.exe (从干净路径外壳)

一切运行良好!,因此版本/test.exe没有path/变量所需的所有内容。

但是,一旦我把文件夹放在另一台windows机器上(7而不是10 ),它就永远不会启动。

  • 我试过瘾君子。它显示了很多“API-missing*..dll”的缺失.
  • 它甚至显示“好”机器上丢失的dll比坏机器少得多!
  • “坏”目标机器上的每一个“缺失dll”实际上都在这台机器上的system32中。

谢谢你的建议,每个建议都是受欢迎的,我有点绝望.:)

编辑

这似乎与机器本身有关。我已经成功地将这个(非常小的)应用程序分别部署到了win7和win8上的2台非开发者机器上。但上面的“坏机器”仍然重新运行它..。

编辑

这个问题似乎不是一般性的,而是与这台特定的机器有关的。因此,可以随意关闭或移动到适当的论坛,因为它与Qt/winulyqt.无关,如果我想出了一个解决方案,并且问题已经关闭,我只需添加最后一个编辑。安全引导和恶意字节是我的下一步操作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-07 23:36:55

经过长时间的调查,.

  1. 不要相信依赖者,它曾经是一个一流的工具,但现在已经过时了。
  2. 如果缺少dll,系统将提示您“无法加载dll xxx.dll”。
  3. 你最好的选择是,如果在X机器上运行而不是在Y机器上运行,最好的方法是:
代码语言:javascript
复制
1. start in safe mode ( run: msconfig --> diagnostic startup ) 
2. turn off any antivirus or non microsoft/driver software, 
3. "run as administrator".

  1. 如果您可以按照步骤3运行,那么通过消除:
代码语言:javascript
复制
1. run without admin rights, 
2. Start anti spyware, etc... 
3. Add appropriate exception to your antivirus if it is the root cause.
4. If the antivirus is not the root cause, run [process monitor](https://technet.microsoft.com/en-us/sysinternals/processmonitor.aspx) on **both** machines. Then compare, what Failed on one machine and not the other ? Read the windows [event log](http://windows.microsoft.com/en-us/windows/what-information-event-logs-event-viewer#1TC=windows-7) and compare any error messages on both machines.

  1. 运行sfc /scannow检查磁盘
  2. 运行一个完整的反间谍软件扫描/pc修复工具( spyware字节,combofix,.)
  3. 确保在这两台机器上都有完全相同的包,确保您没有试图在mac上运行exe,确保您的计算机是打开的。
  4. 打电话给先知,你在矩阵里.

在我的例子中,的问题是巨大的,它通过添加适当的异常来解决。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34983375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档