将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 15 Python
python检查序列seq是否含有aset中项的方法
Jun 30 Python
python中 chr unichr ord函数的实例详解
Aug 06 Python
Python实现的简单模板引擎功能示例
Sep 02 Python
解决pandas read_csv 读取中文列标题文件报错的问题
Jun 15 Python
Python对象属性自动更新操作示例
Jun 15 Python
python实现登录密码重置简易操作代码
Aug 14 Python
Tensorflow设置显存自适应,显存比例的操作
Feb 03 Python
python实现一次性封装多条sql语句(begin end)
Jun 06 Python
pandas apply多线程实现代码
Aug 17 Python
python自动提取文本中的时间(包含中文日期)
Aug 31 Python
python实现AdaBoost算法的示例
Oct 03 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创建PowerPoint2007文档的方法
2015/12/10 PHP
PHP设计模式之工厂模式实例总结
2017/09/01 PHP
php+jQuery ajax实现的实时刷新显示数据功能示例
2019/09/12 PHP
laravel框架select2多选插件初始化默认选中项操作示例
2020/02/18 PHP
jquery选择器(常用选择器说明)
2010/09/28 Javascript
基于jQuery实现的菜单切换效果
2015/10/16 Javascript
基于javascript实现动态时钟效果
2020/08/18 Javascript
基于 Node.js 实现前后端分离
2016/04/23 Javascript
Vue 固定头 固定列 点击表头可排序的表格组件
2016/11/25 Javascript
angular中的cookie读写方法
2017/08/02 Javascript
对于js垃圾回收机制的理解
2017/09/14 Javascript
Vue.js最佳实践(五招助你成为vuejs大师)
2018/05/04 Javascript
jquery判断滚动条距离顶部的距离方法
2018/09/05 jQuery
Layui动态生成select下拉选择框不显示的解决方法
2019/09/24 Javascript
原生js实现日历效果
2020/03/02 Javascript
ES5 模拟 ES6 的 Symbol 实现私有成员功能示例
2020/05/06 Javascript
DWR内存兼容及无法调用问题解决方案
2020/10/16 Javascript
使用Python的Flask框架实现视频的流媒体传输
2015/03/31 Python
Python的Flask框架标配模板引擎Jinja2的使用教程
2016/07/12 Python
浅述python2与python3的简单区别
2018/09/19 Python
Python3实现的判断回文链表算法示例
2019/03/08 Python
Python批量查询关键词微信指数实例方法
2019/06/27 Python
python 同时读取多个文件的例子
2019/07/16 Python
详解如何在cmd命令窗口中搭建简单的python开发环境
2019/08/29 Python
Python实现语音识别和语音合成功能
2019/09/20 Python
PyCharm中配置PySide2的图文教程
2020/06/18 Python
美国一家著名的手表在线折扣网站:Discount Watch Store
2020/02/24 全球购物
智能室内花园:Click & Grow
2021/01/29 全球购物
普通院校学生的自荐信
2013/11/27 职场文书
毕业生自我鉴定实例
2014/01/21 职场文书
新春文艺演出主持词
2014/03/27 职场文书
幼儿园教研活动总结
2014/04/30 职场文书
党员先进事迹材料
2014/12/19 职场文书
公司行政助理岗位职责
2015/04/11 职场文书
Win11怎么修改电源模式?Win11修改电源模式的方法
2022/04/05 数码科技
MySQL中的全表扫描和索引树扫描
2022/05/15 MySQL