将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中函数的参数传递
Jun 21 Python
Python使用正则表达式过滤或替换HTML标签的方法详解
Sep 25 Python
CentOS7.3编译安装Python3.6.2的方法
Jan 22 Python
Python使用装饰器进行django开发实例代码
Feb 06 Python
解决pycharm工程启动卡住没反应的问题
Jan 19 Python
Win10下Python3.7.3安装教程图解
Jul 08 Python
Python 调用 Outlook 发送邮件过程解析
Aug 08 Python
基于Python的图像数据增强Data Augmentation解析
Aug 13 Python
Python JSON编解码方式原理详解
Jan 20 Python
PyQt QMainWindow的使用示例
Mar 24 Python
Python Flask请求扩展与中间件相关知识总结
Jun 11 Python
python人工智能human learn绘图可创建机器学习模型
Nov 23 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
一个简单的域名注册情况查询程序
2006/10/09 PHP
php inc文件使用的风险和注意事项
2013/11/12 PHP
PHP中串行化用法示例
2016/11/16 PHP
PHP手机短信验证码实现流程详解
2018/05/17 PHP
用js 让图片在 div或dl里 居中,底部对齐
2008/01/21 Javascript
JQuery 入门实例1
2009/06/25 Javascript
Jquery ui css framework
2010/06/28 Javascript
如何在JavaScript中实现私有属性的写类方式(一)
2013/12/04 Javascript
JavaScript获得指定对象大小的方法
2015/07/01 Javascript
jquery-tips悬浮提示插件分享
2015/07/31 Javascript
纯javascript移动优先的幻灯片效果
2015/11/02 Javascript
Vue.js第三天学习笔记(计算属性computed)
2016/12/01 Javascript
bootstrap table实例详解
2017/01/06 Javascript
Node.js中的require.resolve方法使用简介
2017/04/23 Javascript
详解Angular之constructor和ngOnInit差异及适用场景
2017/06/22 Javascript
微信小程序实战篇之购物车的实现代码示例
2017/11/30 Javascript
Vue.js组件间的循环引用方法示例
2017/12/27 Javascript
Vue-Router2.X多种路由实现方式总结
2018/02/09 Javascript
原生JS实现图片懒加载之页面性能优化
2019/04/26 Javascript
使用layui前端框架弹出form表单以及提交的示例
2019/10/25 Javascript
解决vue-photo-preview 异步图片放大失效的问题
2020/07/29 Javascript
python实现的一个p2p文件传输实例
2014/06/04 Python
python和shell实现的校验IP地址合法性脚本分享
2014/10/23 Python
Python AES加密模块用法分析
2017/05/22 Python
python中int与str互转方法
2018/07/02 Python
Python 脚本获取ES 存储容量的实例
2018/12/27 Python
tensorflow实现打印ckpt模型保存下的变量名称及变量值
2020/01/04 Python
Html5+JS实现手机摇一摇功能
2015/04/24 HTML / CSS
韩国美国时尚服装和美容在线全球市场:KOODING
2018/11/07 全球购物
阿巴庭院:Abba Patio
2019/06/18 全球购物
橄榄树药房:OLIVEDA
2019/09/01 全球购物
村委会换届选举方案
2014/05/03 职场文书
2015年社区纪检工作总结
2015/04/21 职场文书
血轮眼轮回眼特效 html+css
2021/03/31 HTML / CSS
PYTHON基于Pyecharts绘制常见的直角坐标系图表
2022/04/28 Python
图神经网络GNN算法
2022/05/11 Python