• 关于升级win10导致环境变量和注册表中的盘符被修改为星号*这件事


    坑爹的起因

    • 最开始是公司电脑可能被其它同事安装一些证书时弄的有点问题了,导致请求微信api、下载maven包等各种需要https的请求都会报PKIX path building failed相关错误,但这个不是一直报,多次请求后就不报了,过一会又报,可以参考原先的一些讨论https问题PKIX path building failed
    • 没办法,太费时间,想重装系统,但正好发现win10可以升级到新版本,所以先升级看看,直接用微软易升1909升到了20H2,然后测试了下请求https接口,太好了,正常了,不再出问题了,但接着悲剧就来了,请求java -version发现报错,打开环境变量一看,所有的D:java...都变成了*:java...,而且不单单是java的不行,只要是装在D盘中的路径相关,都变成星号了,没办法只能批量修改下所有的环境变量。
    • 但是修改后完全不管用啊,网上一搜还要修改注册表,我导出了整个注册表,批量检索了下关键字*:,有1万多条,有点懵逼,批量修改了下(分关键字检索修改,因为有些*:并不一定是要替换为D:),然后导入注册表时又提示没有权限。。。额。。。

    解决方法

    • 相关软件
      • Registry Finder,可以查找替换注册表,不需要在文本中自己替换了,但替换时还是会提示没有权限。
      • PsExec,可以以system权限打开相关软件,这样就可以有权限了。
    • 相关操作
      • 通过PsExec来打开Registry Finder,管理员身份打开cmd,切换到PsExec的解压目录,然后运行命令psexec.exe -i -d -s registry-finder应用全路径,这样打开的registry finder就有权限来修改注册表了。
      • Registry Finder的操作就不详细说了,右键根目录搜索关键字例如*:Program,搜索出来后在导航栏Edit中选择Replace in Find Results,查找的输入*:Program,替换的输入D:Program,然后就会替换了。

    其它

  • 相关阅读:
    5.1.5 JunkMail Filter
    POJ1067 取石子游戏 跪跪跪,很好的博弈论
    USACO Section 3.2 Magic Squares (msquare)
    5.1.1 A Bug's Life
    USACO Section 3.3 Riding The Fences (fence)
    USACO Section 3.1 Stamps (stamps)
    5.2.7 Entropy
    USACO Section 3.1 AgriNet (agrinet)
    5.1.8 How Many Answers Are Wrong
    4.3.6 N皇后问题
  • 原文地址:https://www.cnblogs.com/vishun/p/14348193.html
Copyright © 2020-2023  润新知