将python安装信息加入注册表的示例


Posted in Python onNovember 20, 2019

背景

重装系统,发现之前装在E盘的python可以直接使用,就只是将python的安装目录加入到环境变量中,也一直没有管它,今天跟天软交互的时候发现一直不成功,猜测可能是没有注册表信息。

从网上找的一段代码,直接复制运行即可,留存备查。

代码

py3.5.2

import sys

from winreg import *

# tweak as necessary
version = sys.version[:3]
installpath = sys.prefix

regpath = "SOFTWARE\\Python\\Pythoncore\\%s\\" % (version)
installkey = "InstallPath"
pythonkey = "PythonPath"
pythonpath = "%s;%s\\Lib\\;%s\\DLLs\\" % (
  installpath, installpath, installpath
)

def RegisterPy():
  try:
    reg = OpenKey(HKEY_CURRENT_USER, regpath)
  except EnvironmentError as e:
    try:
      reg = CreateKey(HKEY_CURRENT_USER, regpath)
      SetValue(reg, installkey, REG_SZ, installpath)
      SetValue(reg, pythonkey, REG_SZ, pythonpath)
      CloseKey(reg)
    except:
      print("*** Unable to register!")
      return
    print("--- Python", version, "is now registered!")
    return
  if (QueryValue(reg, installkey) == installpath and
    QueryValue(reg, pythonkey) == pythonpath):
    CloseKey(reg)
    print("=== Python", version, "is already registered!")
    return
  CloseKey(reg)
  print("*** Unable to register!")
  print("*** You probably have another Python installation!")

if __name__ == "__main__":
  RegisterPy()

py2.*版本

'''
解决注册问题,pywin32安装存在问题
'''

import sys

from _winreg import *

# tweak as necessary
version = sys.version[:3]
installpath = sys.prefix

regpath = "SOFTWARE\\Python\\Pythoncore\\%s\\" % (version)
installkey = "InstallPath"
pythonkey = "PythonPath"
pythonpath = "%s;%s\\Lib\\;%s\\DLLs\\" % (
  installpath, installpath, installpath
)

def RegisterPy():
  try:
    reg = OpenKey(HKEY_CURRENT_USER, regpath)
  except EnvironmentError as e:
    try:
      reg = CreateKey(HKEY_CURRENT_USER, regpath)
      SetValue(reg, installkey, REG_SZ, installpath)
      SetValue(reg, pythonkey, REG_SZ, pythonpath)
      CloseKey(reg)
    except:
      print "*** Unable to register!"
      return
    print "--- Python", version, "is now registered!"
    return
  if (QueryValue(reg, installkey) == installpath and
    QueryValue(reg, pythonkey) == pythonpath):
    CloseKey(reg)
    print "=== Python", version, "is already registered!"
    return
  CloseKey(reg)
  print "*** Unable to register!"
  print "*** You probably have another Python installation!"

if __name__ == "__main__":
  RegisterPy()

以上这篇将python安装信息加入注册表的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python获取电脑硬件信息及状态的实现方法
Aug 29 Python
Python中的字符串查找操作方法总结
Jun 27 Python
python调用Matplotlib绘制分布点并且添加标签
May 31 Python
浅谈Python的条件判断语句if/else语句
Mar 21 Python
Python使用random模块生成随机数操作实例详解
Sep 17 Python
python OpenCV GrabCut使用实例解析
Nov 11 Python
Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例
Mar 18 Python
在Matplotlib图中插入LaTex公式实例
Apr 17 Python
如何在VSCode下使用Jupyter的教程详解
Jul 13 Python
python使用pywinauto驱动微信客户端实现公众号爬虫
May 19 Python
python基于机器学习预测股票交易信号
May 25 Python
Python时间操作之pytz模块使用详解
Jun 14 Python
如何使用Python脚本实现文件拷贝
Nov 20 #Python
Python笔记之代理模式
Nov 20 #Python
Python Tkinter模块 GUI 可视化实例
Nov 20 #Python
Python笔记之观察者模式
Nov 20 #Python
django 实现celery动态设置周期任务执行时间
Nov 19 #Python
python调用接口的4种方式代码实例
Nov 19 #Python
Python Django2.0集成Celery4.1教程
Nov 19 #Python
You might like
压力如何影响浓缩咖啡品质
2021/03/03 咖啡文化
PHP syntax error, unexpected $end 错误的一种原因及解决
2008/10/25 PHP
ThinkPHP php 框架学习笔记
2009/10/30 PHP
PHP合并数组的2种方法小结
2016/11/24 PHP
php 可变函数使用小结
2018/06/12 PHP
Thinkphp5框架简单实现钩子(Hook)行为的方法示例
2019/09/03 PHP
JS request函数 用来获取url参数
2010/05/17 Javascript
jQuery之自动完成组件的深入解析
2013/06/19 Javascript
js调用打印机打印网页字体总是缩小一号的解决方法
2014/01/24 Javascript
jQuery实现给input绑定回车事件的方法
2017/02/09 Javascript
JS+HTML5实现上传图片预览效果完整实例【测试可用】
2017/04/20 Javascript
js断点调试经验分享
2017/12/08 Javascript
关于react中组件通信的几种方式详解
2017/12/10 Javascript
Vue源码解析之数据响应系统的使用
2019/04/24 Javascript
JS 5种遍历对象的方式
2020/06/16 Javascript
[03:49]显微镜下的DOTA2第十五期—VG登基之路完美团
2014/06/24 DOTA
[59:44]2018DOTA2亚洲邀请赛 3.31 小组赛 B组 paiN vs iG
2018/03/31 DOTA
[05:53]敌法师的金色冠名ID"BurNIng",是传说,是荣耀
2020/07/11 DOTA
python实现倒计时的示例
2014/02/14 Python
Python sys.argv用法实例
2015/05/28 Python
Python+微信接口实现运维报警
2016/08/27 Python
Python编程实现的图片识别功能示例
2017/08/03 Python
使用Python读取大文件的方法
2018/02/11 Python
python实现公司年会抽奖程序
2019/01/22 Python
python在openstreetmap地图上绘制路线图的实现
2019/07/11 Python
经验丰富程序员才知道的8种高级Python技巧
2020/07/27 Python
删除pycharm鼠标右键快捷键打开项目的操作
2021/01/16 Python
VELTRA台湾:世界自由行专家
2017/08/15 全球购物
lookfantastic荷兰:在线购买奢华护肤、护发和化妆品
2018/11/27 全球购物
罗马尼亚在线杂货店:Pilulka.ro
2019/09/28 全球购物
请解释一下webService? 如何用.net实现webService
2014/06/09 面试题
团支书竞选演讲稿
2014/04/28 职场文书
写给老婆的保证书
2015/02/27 职场文书
2016年小学生新年寄语
2015/08/18 职场文书
JavaScript实现简单图片切换
2021/04/29 Javascript
修改MySQL的数据库引擎为INNODB的方法
2021/05/26 MySQL