C++ Windeployqt赢得';“不要跑”;访问被拒绝。”;

C++ Windeployqt赢得';“不要跑”;访问被拒绝。”;,c++,qt,C++,Qt,我正在尝试部署Qt应用程序,但每次尝试运行windeployqt.exe时,我都会在Windows弹出窗口中遇到以下错误: 此应用无法在你的电脑上运行,若要查找你电脑的版本,请与发布者联系 在终端: 访问被拒绝 这是我的部署脚本,运行在VS 2017 Developer CMD中。我没有任何其他错误,因此我非常确定qmake和nmake工作正常 call "C:\Program Files (x86)\Microsoft Visual Studio\...\vcvars64.bat" call

我正在尝试部署Qt应用程序,但每次尝试运行
windeployqt.exe
时,我都会在Windows弹出窗口中遇到以下错误:

此应用无法在你的电脑上运行,若要查找你电脑的版本,请与发布者联系

在终端:

访问被拒绝

这是我的部署脚本,运行在VS 2017 Developer CMD中。我没有任何其他错误,因此我非常确定
qmake
nmake
工作正常

call "C:\Program Files (x86)\Microsoft Visual Studio\...\vcvars64.bat"
call C:\Qt\5.13.1\msvc2017_64\bin\qtenv2.bat
C:\Qt\5.13.1\msvc2017_64\bin\qmake.exe CONFIG+=release [path to .pro]
"C:\Program Files (x86)\Microsoft Visual Studio\...\nmake.exe" [path to Makefile.Release]
copy [path to my qt app executable] [output folder]
cd [output folder]
windeployqt.exe

windeployqt.exe
在我的
路径中,但它仍然不会运行。这是我第一次部署Qt应用程序,在尝试运行
windeployqt.exe
之前,我找不到任何文档指定我还需要执行其他操作。我还检查了相关的文件夹权限。我的应用程序的可执行文件是64位的,我使用的是
MSVC2017
编译器。如果需要任何其他信息,请告诉我。

重新安装Qt解决了此问题。正如Azem指出的,32位版本的windeployqt试图使用64位二进制文件。

尝试以管理员身份运行脚本?输出文件夹是什么?您是否尝试在另一个驱动器中构建并运行此文件?@jkofskie:您是否尝试手动进入binaries文件夹,然后在那里运行
winqtdeploy.exe
?在你运行这个的文件夹中只有一个可执行文件吗?您的Qt是32位还是64位?从脚本来看,我相信您正在构建一个64位版本,所以您的Qt版本也是64位的,对吗?请在您的问题中也更新此信息。@Azeem让它起作用了。是的,应用程序是64位的。然而,QT中的“大约”部分只显示了Visual C++的版本,它是32位的。我决定重新安装Qt,这就解决了问题。谢谢你的帮助。我不知道到底是什么问题,但我很高兴它现在起作用了。检查Qt是32位还是64位的正确方法是什么?我想知道这是否是问题所在,这样我才能准确地回答我的问题。@Jkofski:太棒了!实际上,由于弹出错误,我怀疑
winqtdeploy.exe
是一个32位的应用程序,它试图从64位二进制文件中获取信息,这就是我询问Qt构建的原因。您可以使用32位可执行文件进行检查以确认这一点。顺便说一句,我很高兴问题解决了。干杯。:)