将python安装信息加入注册表的示例
背景
重装系统,发现之前装在E盘的python可以直接使用,就只是将python的安装目录加入到环境变量中,也一直没有管它,今天跟天软交互的时候发现一直不成功,猜测可能是没有注册表信息。
从网上找的一段代码,直接复制运行即可,留存备查。
代码
py3.5.2
importsys fromwinregimport* #tweakasnecessary 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 ) defRegisterPy(): try: reg=OpenKey(HKEY_CURRENT_USER,regpath) exceptEnvironmentErrorase: try: reg=CreateKey(HKEY_CURRENT_USER,regpath) SetValue(reg,installkey,REG_SZ,installpath) SetValue(reg,pythonkey,REG_SZ,pythonpath) CloseKey(reg) except: print("***Unabletoregister!") return print("---Python",version,"isnowregistered!") return if(QueryValue(reg,installkey)==installpathand QueryValue(reg,pythonkey)==pythonpath): CloseKey(reg) print("===Python",version,"isalreadyregistered!") return CloseKey(reg) print("***Unabletoregister!") print("***YouprobablyhaveanotherPythoninstallation!") if__name__=="__main__": RegisterPy()
py2.*版本
''' 解决注册问题,pywin32安装存在问题 ''' importsys from_winregimport* #tweakasnecessary 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 ) defRegisterPy(): try: reg=OpenKey(HKEY_CURRENT_USER,regpath) exceptEnvironmentErrorase: try: reg=CreateKey(HKEY_CURRENT_USER,regpath) SetValue(reg,installkey,REG_SZ,installpath) SetValue(reg,pythonkey,REG_SZ,pythonpath) CloseKey(reg) except: print"***Unabletoregister!" return print"---Python",version,"isnowregistered!" return if(QueryValue(reg,installkey)==installpathand QueryValue(reg,pythonkey)==pythonpath): CloseKey(reg) print"===Python",version,"isalreadyregistered!" return CloseKey(reg) print"***Unabletoregister!" print"***YouprobablyhaveanotherPythoninstallation!" if__name__=="__main__": RegisterPy()
以上这篇将python安装信息加入注册表的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。