前言

    最近发现XShell 6 打不开了,应用程序无法正常启动。卸载再安装或者更新都解决不了问题

解决办法

    1. 先用depends查看[链接],省略掉 API-MS-WIN等dll缺失,发现有几个关键的DLL缺失

    2. 到 Download missing DLL files for free | DLL‑files.com 找到这些dll文件

    3. 确定Xshell的位数(我是通过安装软件默认地址给的C:\Program Files (x86)\确定是32位的,我的版本是Xshell-6.0.0175p)

    4. 把下载好的dll放入C:\Windows\SysWOW64

     5. 依旧报错....期间得知这几个dll与MicroSoft Visual C++库有关,于是到微软官方下载了缺失的Visual C++ 2012(x86)

      【 Visual C++与dll对应版本】

      # msvcp120.dll —— VC++2013 

      # msvcp110.dll —— VC++2012

      #  msvcp100.dll —— VC++2010 

      #  msvcp90.dll —— VC++2008

     6. 依旧报错....后来发现重新安装VC++ 不会去覆盖已有的文件,即如果C:\Windows\SysWOW64已经含mfc110u.dll,卸载再安装VC++并不会删除原有的文件再创建该文件,只有当文件夹中不存在该文件时才会再生成,而问题就出在我从网址里下载的dll可能有某些问题,所以我把之前导入的这三个文件删掉,然后重新安装VC++2012(x86)

    7. 成功打开Xshell6

反思

    造成原因:想起之前乱删过一次Visual C++库,以为后面的版本可以承担之前版本的功能,所以就手贱把低版本的删了一遍,导致有一天需要用到Xshell发现它挂了....

    实际情况:如果要卸载的话可以选择9.0.0之前版本的Visual C++,因为此版本之前的库绝大多数是为2010年之前的软件提供API,若卸载了不会影响绝大多数近期更新的软件,但是不否认有新软件还需要的特例,所以只有在必须的时候才选择卸载。程序编译版本不一样需要的运行组件版本也不一样,所以不建议删除,但是删除之后也可以到微软的官网上下载,再次安装。

其他问题

    Visual C++2015(x86)安装不上,打开日志文件说是已经有更新的版本了,所以把2017、2015(x64)删掉后就安装上了

    不知道是不是这个原因

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐