将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生成随机验证码(中文验证码)示例
Apr 03 Python
Python中asyncore的用法实例
Sep 29 Python
python将unicode转为str的方法
Jun 21 Python
python 文件操作删除某行的实例
Sep 04 Python
详解分布式任务队列Celery使用说明
Nov 29 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
May 23 Python
Pytorch卷积层手动初始化权值的实例
Aug 17 Python
python requests抓取one推送文字和图片代码实例
Nov 04 Python
python循环输出三角形图案的例子
Nov 22 Python
SpringBoot首页设置解析(推荐)
Feb 11 Python
python 爬取腾讯视频评论的实现步骤
Feb 18 Python
python基础之类属性和实例属性
Oct 24 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
php imagecreatetruecolor 创建高清和透明图片代码小结
2010/05/15 PHP
PHP 创建标签云函数代码
2010/05/26 PHP
PHP+FastCGI+Nginx配置PHP运行环境
2014/08/07 PHP
详解PHP匿名函数与注意事项
2016/03/29 PHP
yii2.0整合阿里云oss的示例代码
2017/09/19 PHP
Ajax,UTF-8还是GB2312 eval 还是execScript
2008/11/13 Javascript
JavaScript 动态创建VML的方法
2009/10/14 Javascript
JavaScript 高级篇之DOM文档,简单封装及调用、动态添加、删除样式(六)
2012/04/07 Javascript
jquery插件制作教程 txtHover
2012/08/17 Javascript
js完美解决IE6不支持position:fixed的bug
2015/04/24 Javascript
javascript HTML5 canvas实现打砖块游戏
2020/06/18 Javascript
window.onload绑定多个事件的两种解决方案
2016/05/15 Javascript
jQuery 跨域访问解决原理案例详解
2016/07/09 Javascript
jQuery实现加入收藏夹功能(主流浏览器兼职)
2016/12/24 Javascript
JS实现手写parseInt的方法示例
2017/09/24 Javascript
使用JavaScript实现在页面中显示距离2017年中秋节的天数
2017/09/26 Javascript
vue 简单自动补全的输入框的示例
2018/03/12 Javascript
python益智游戏计算汉诺塔问题示例
2014/03/05 Python
Python Sleep休眠函数使用简单实例
2015/02/02 Python
python实现简单的计时器功能函数
2015/03/14 Python
python链接Oracle数据库的方法
2015/06/28 Python
Numpy中stack(),hstack(),vstack()函数用法介绍及实例
2018/01/09 Python
python增加矩阵维度的实例讲解
2018/04/04 Python
python实现递归查找某个路径下所有文件中的中文字符
2019/08/31 Python
python打包成so文件过程解析
2019/09/28 Python
Python使用正则表达式实现爬虫数据抽取
2020/08/17 Python
PyTorch安装与基本使用详解
2020/08/31 Python
iHerb中文官网:维生素、保健品和健康产品
2018/11/01 全球购物
加拿大品牌鞋包连锁店:Little Burgundy
2021/02/28 全球购物
产品工艺师的岗位职责
2013/11/15 职场文书
考博专家推荐信模板
2013/12/02 职场文书
怎么写好自荐书
2014/03/02 职场文书
初中国旗下的演讲稿
2014/08/28 职场文书
入股协议书范本
2014/11/01 职场文书
小学生勤俭节约倡议书
2015/04/29 职场文书
Golang之sync.Pool使用详解
2021/05/06 Golang