pyqt5环境变量踩坑记

之前用一个cmd脚本

wmic ENVIRONMENT create name="QT_QPA_PLATFORM_PLUGIN_PATH",username="<system>",VariableValue="%cd%\plugins"
pause

自动添加pyqt的环境变量。但是添加了之后,其他designer就打不开了,试了各种方法。初步猜测designer是用qt开发的,它依赖的插件是加载其主目录下的插件。但是设置了环境变量之后,就自动的去寻找环境变量下的插件。所以要删除环境变量。但是我把系统用户、administrator用户的QT_QPA_PLATFORM_PLUGIN_PATH都删除了,但都没有什么卵用。并且删除之后就提示这个环境变量在C:\ProgramData\Anaconda3\Lib\site-packages\PyQt5\Qt路径。

怀疑是注册表的问题,打开regedit搜索QT_QPA_PLATFORM_PLUGIN_PATH果然键值是C:\ProgramData\Anaconda3\Lib\site-packages\PyQt5\Qt,

 

 

将其删除。重启电脑,重装软件,终于可以用了。

 

之后,我思考过通过设置临时环境变量:

set QT_QPA_PLATFORM_PLUGIN_PATH ="%cd%\PyQt5\Qt\plugins"
main.exe
set QT_QPA_PLATFORM_PLUGIN_PATH 
pause

这段代码,第一行设置临时环境变量,第二行执行程序,第三行打印环境变量。结果环境变量在控制台上是始终存在的(临时环境变量),但是并没有什么卵用,程序运行失败,说检测不到环境变量。

看来还是只能通过加载目录下插件的方法运行。这个问题留到以后解决

 

posted @ 2018-04-14 11:23  TQCAI  阅读(1347)  评论(0编辑  收藏  举报