V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
bclerdx
V2EX  ›  Windows

关于 PC 版本的应用程序或软件是 32 位还是 64 位的区别?

  •  
  •   bclerdx · 82 天前 · 2001 次点击
    这是一个创建于 82 天前的主题,其中的信息可能已经有所发展或是发生改变。
    正常或按一般逻辑规则理解,在安装一个 EXE 应用程序的时候,如果安装目录默认指定在 X:\Program Files 的必定是 64 位版本软件,安装目录默认指定在 X:\Program Files(x86)的必定是 32 位版本的软件?

    不知以上理解是否正确!!!
    17 条回复    2024-02-06 13:08:27 +08:00
    wipbssl
        1
    wipbssl  
       82 天前
    不一定,比如 chrome
    chilledheart
        2
    chilledheart  
       82 天前
    chrome???
    bclerdx
        3
    bclerdx  
    OP
       82 天前
    @chilledheart 就一般的、普通的软件,比如 Adobe 系列软件、微信电脑版、Notepad++等等诸如此类软件的 EXE 安装包。
    jinliming2
        4
    jinliming2  
       82 天前 via iPhone
    不一定,这个只是约定,没有硬性要求。还有一些软件同时包含 32 位版本和 64 位版本,他们的 exe 放在一起。
    ysc3839
        5
    ysc3839  
       82 天前 via Android
    Program Files (x86)主要是为了 32 位和 64 位共存,而且也只是建议安装位置,没有共存需求、有兼容性需求的完全可以不遵守
    shyangs
        6
    shyangs  
       82 天前
    你隨便安裝在哪裡都可以執行。32 位版本也可以安裝 X:\Program Files

    那些安裝路徑只是約定,不是強制要求,約定可以不遵守。
    kokutou
        7
    kokutou  
       82 天前 via Android
    windows 有个重定向 32 位程序的操作,你用 nsis 生成一个 32 位的安装包试试就知道了
    Windows 还提供了一个 api 禁止重定向。。。叫 Wow64DisableWow64FsRedirection 。。。
    moen
        8
    moen  
       82 天前
    WOA 下 Microsoft OpenJDK arm64 还是安装在 Program Files (Arm) 里呢,而这个位置约定是存放 arm32 程序
    FengMubai
        9
    FengMubai  
       82 天前
    使用`file`命令检测你想要了解的可执行文件, Windows 下可以安装 busybox 获得. `file`命令还可以检测其他文件类型
    kneo
        10
    kneo  
       82 天前 via Android
    不知道是汉语的问题还是逻辑的问题。正常人前面用了“正常”“一般”这样的词汇就不会立马连飙两个“必定”。
    lawlyet666
        11
    lawlyet666  
       82 天前
    @kneo 确实
    tzxxxx
        12
    tzxxxx  
       82 天前
    打包工具可以任选安装位置,没有约束性
    chilledheart
        13
    chilledheart  
       82 天前
    @bclerdx Program Files (x86) 安排 32 位程序是推荐做法或者是规范做法,但不是强制,也没有保证这个区别。
    Crawping
        14
    Crawping  
       82 天前
    方法 1:任务管理器 -> 详细 -> 平台 (如果没有该项,在选择列中勾选)
    方法 2:PE 工具查看
    maemolee
        15
    maemolee  
       82 天前
    @kneo 你可以这么理解,“正常”“一般”这俩词儿要表达的含义是:“去掉全部例外,仅讨论剩余的绝大多数同类案例”。理解了这个含义,你就能理解为什么后面会出现“必定”了。
    maemolee
        16
    maemolee  
       82 天前
    @kneo 举个例子,此处仅从语言角度,不代表说话者本人的意识形态和政治倾向。

    (例文)对正常的青春期少年少女来说(结合后文,此处“正常”一词舍弃掉的例外是:同性恋群体),男生一定喜欢女生,女生一定喜欢男生。
    Projection
        17
    Projection  
       81 天前
    一般来说,安装程序不会写死 "Program Files" 或 "Program Files (x86)" 这个路径,而是直接从系统环境变量中读取 "ProgramFiles"。如果程序编译目标目标平台为 x86 那么获得到的环境变量可能为 "Program Files" 或 "Program Files (x86)"(取决于操作系统的位数);如果目标为 x64 ,那么只可能获得 "Program Files"( 32 位操作系统无法直接运行 64 位程序)。

    当然不排除个别程序有写死安装路径的可能。
    你可以自己写个程序来验证。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2916 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 07:35 · PVG 15:35 · LAX 00:35 · JFK 03:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.