踩坑-OneDrive报错:This application failed to start because no Qt platform plugin could be initialized

背景

打算用OneDrive实现备份。点击win10系统自带的OneDrive时,无法启动OneDrive,而且没有任何提示。无奈卸载掉并重装OneDrive。重新安装后,再次启动OneDrive,提示"Application Failed to start because no QT Platform could be initialized"错误。
踩坑-OneDrive报错:This application failed to start because no Qt platform plugin could be initialized_第1张图片

本机软件情况

1.Anaconda

2.除Anaconda外本地未安装python任何版本

3.未单独安装qt

4.Office其他软件正常使用

踩坑记录

重装软件

由于提示框提示,通过重装软件的方式可能能解决问题。

我重新卸载并安装了两次,没有成功。

一篇博客提醒可能是由于官网下载的OneDrive版本过新,即版本问题。原帖链接

我查看了一下最新的版本号为22.065.0412.0004
在这里插入图片描述
然后按照博客给出的链接下载并安装了19.152.0927.0012版本的OneDrive

但是还是没有成功。

排除版本号问题。

其他

参考的帖子中更新了他的真正原因,本地环境中安装了phthon3以及PyQt5。

添加环境变量

参考帖子给出了添加"QT_QPA_PLATFORM_PLUGIN_PATH"环境变量的方法。原帖链接

我的电脑中有此环境变量,所以排除此问题。

安装QT

既然提示缺少qt的平台插件,那么安装qt就行了。

我查找了一下qt的安装方法,发现这个软件安装复杂而且比较庞大。我又问了几个在用OneDrive的朋友。他们表示,没有安装qt也能正常运行程序。所以我认为并不是因为缺少qt程序导致的。

Anaconda的PyQt5

PyQt5与QT的区别:PyQt5简述===PyQt5和Qt的关系 是pyqt好还是qt好?

我看网上有说,通过Anaconda安装PyQt5可以解决。于是我开始通过Anaconda安装PyQt5。

首先通过确定我之前没有安装过PyQt5。在cmd命令窗口中输入"pip list | findstr qt",只安装了qtconsole。

在这里插入图片描述

安包过程中,提示”Could not find a version that satisfies the requirement“

依次使用了更改安装方式、修改镜像源等方式都无法安装。这时我发现一篇博客(原帖链接)提到了Anaconda自带PyQt5。原帖中给出了查找了本地Anaconda的包安装位置(…\Library\bin),并没有找到。但是我在(…\pkgs)中找到了关于qt的文件夹。

踩坑-OneDrive报错:This application failed to start because no Qt platform plugin could be initialized_第2张图片

按照两篇博客(原博客1,原博客2),我在(…\pkgs\qt-5.9.6-vc14h1e9a669_2\Library)中找到了plugins文件夹,但是移入OneDrive的安装位置后依然不行。

解决问题

该博客中提出可能是由于"QT_QPA_PLATFORM_PLUGIN_PATH"环境变量改变了OneDirve要初始化的Qt插件,导致Qt插件初始化失败。原博客

我查看了一下我本地的环境变量’'QT_QPA_PLATFORM_PLUGIN_PATH’的值为"D:\Anaconda\install\pkgs\qt-5.9.7-vc14h73c81de_0\Library\plugins"

踩坑-OneDrive报错:This application failed to start because no Qt platform plugin could be initialized_第3张图片

再将该环境变量删除后,OneDrive成功运行。

遗留问题

QT_QPA_PLATFORM_PLUGIN_PATH

该环境变量应该是当初安装Anaconda时,按照教程添加到系统中的。查询发现,如果缺少此环境变量,有可能导致Spyder、Designer或者引入matplotlib包时出错。但是我在删除此环境变量后并没有出现该问题。目前还不知道删除此环境变量后会引发什么问题。

PyQt5

我在Anconda的安装目录(…\pkgs)找到了qt以及pyqt的文件夹,而且打开Spyder(Spyder->Help->About Spyder)也能看到系统中已经有qt和pyqt并且版本号也能看到。在cmd窗口引入pyqt(import PyQt5)也不报错。

踩坑-OneDrive报错:This application failed to start because no Qt platform plugin could be initialized_第4张图片

但是在cmd窗口使用(pip list | findstr PyQt)没有得到结果。

更多有关qt问题解决方案集合

This application failed to start because no Qt platform plugin could be initialized问题解决合集

你可能感兴趣的:(踩坑,qt)