解决使用同名32位和64位程序的环境变量冲突方案

发布时间 2023-03-23 20:15:25作者: flxx

说到底环境变量只是一个简便用户书写路径的方式而已,当然可以使用环境变量优化用户体验或者使用指定文件亦可行。

  1. 如果只是单一的程序,为了简单使用,可以配置环境变量,如iscc(打包程序),可以配置环境变量,然后直接在cmd使用即可
    image
::执行指令文件iscc对文件夹进行打包成安装包
iscc xxx.iss
  1. 如果程序所在目录没有特殊字符(不影响cmd路径的解析功能),可以直接指定目录使用即可,跳过环境变量的查找,效率更高,如qmake编译pro文件
C:\Qt\Qt5.12.4\5.12.4\msvc2017_64\bin\windeployqt.exe ./xxx.exe
  1. 如果程序所在目录存在特殊字符影响cmd解析路径,则想办法解决解析路径的问题
    a. 使用""功能,偶尔解析依然存在问题
    b. 使用dir /x获取文件的短名称,如果没有短名称则显示原名称,肯定有一个是可以正常解析的,如下所示:

    C:\>dir /x
     驱动器 C 中的卷是 本地磁盘
     卷的序列号是 3859-09EA
    
     C:\ 的目录
    
    2022/07/31  14:10    <DIR>                       Apps
    2022/05/06  19:37           112,104 APPVER~1.DLL appverifUI.dll
    2022/07/31  14:10    <DIR>                       backup
    2022/07/31  14:10    <DIR>                       dell
    2022/07/31  14:10    <DIR>                       Drivers
    2022/07/31  14:10    <DIR>                       e-logo
    2022/05/07  13:24    <DIR>                       PerfLogs
    2023/03/16  11:26    <DIR>          PROGRA~1     Program Files
    2023/03/16  11:26    <DIR>          PROGRA~2     Program Files (x86)
    2023/03/20  13:39    <DIR>                       Qt
    2022/09/28  16:06            93,696 RMPREV~1.PSR rmpreview.psr
    2022/10/18  14:36    <DIR>                       Users
    2022/05/06  19:37            66,200              vfcompat.dll
    2023/03/08  09:16    <DIR>                       VM
    2022/10/20  16:25    <DIR>                       WCH.CN
    2023/03/22  13:40    <DIR>                       Windows
    			   3 个文件        272,000 字节
    			  13 个目录 51,775,172,608 可用字节
    

    C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe可替换为如下所示路径C:\PROGRA~1\MIB055~1\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe
    编译vs功能,则可以使用

    C:\PROGRA~1\MIB055~1\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.exe xxx.sln /p:Configuration=Release /p:Platform=x64 /t:Rebuild