Cursor 在 Windows 上装一次本来不该折腾,但”装到哪个范围、给谁用”这件事没想清楚,后面全是小麻烦:装完终端里找不到命令、换个 Windows 账号图标凭空消失、公司电脑没有管理员权限卡死在授权弹窗。这篇按排障的顺序,把 Windows 上 per-user(用户级)和 per-machine(机器级,也就是常说的 system 方式)两套安装机制讲清楚,再给出每种场景下的选择建议。

Cursor 用户级与机器级安装目录对比示意

报错现象:三类典型症状

症状不止一种,但根源往往相同。

症状一:装不上,卡在管理员授权。 双击安装包后 Windows 弹出”用户账户控制”对话框,要求输入管理员密码。个人电脑自己输一下就过去了,公司管控的电脑根本没有管理员密码,只能点”否”,安装直接终止:

用户账户控制
你要允许此应用对你的设备进行更改吗?
发布者:(安装包的签名主体,以实际弹窗为准【待补:签名主体原文】)
  是(Y)   否(N)

症状二:装完了,另一个 Windows 账号看不到。 自己的账号用得好好的,家人或同事登录同一台电脑,开始菜单里没有 Cursor,桌面快捷方式也不存在,好像从来没装过。

症状三:终端里 cursor 命令找不到。 想在终端用 cursor . 快速打开项目,系统却报找不到命令:

PS C:\Users\alice> where.exe cursor
信息: 用提供的模式无法找到文件。

三个症状看起来互不相干,其实都指向同一个问题:这个应用被装进了哪个”范围”。

环境:先把权限和系统版本摸清

动手排查之前,先确认三件事,后面每一步都依赖它们:

  • 操作系统:Windows 10 或 Windows 11,两代在这套机制上行为一致,下述方法通用;
  • 账号类型:当前账号是管理员还是标准用户。打开”设置 → 账户 → 你的信息”一眼可见;公司域控机器上标准用户是常态;
  • 机器归属:个人电脑还是公司管控电脑。后者往往装了终端管理软件,能不能自己装应用本身就是个问题。

顺手检查一下资源:安装包在 100MB 量级,装完连同运行时占用 1GB 上下的磁盘空间;内存 8GB 是舒适线,4GB 的机器能跑但多开应用会吃力——这些都是 Electron 编辑器的通识量级,具体以本机实测为准。C 盘空间紧张的先把空间清出来,装到一半磁盘不足是另一类更难看的报错。

排查过程:三步确认当前装在了哪个范围

第一步:看安装目录。 用户级和机器级的默认目录完全不同,用 PowerShell 各探测一次:

# 用户级默认安装目录(per-user)
Test-Path "$env:LOCALAPPDATA\Programs\cursor"

# 机器级默认安装目录(per-machine)
Test-Path "$env:ProgramFiles\Cursor"

哪个返回 True,就说明装在了哪个范围。两个都返回 True 的情况也存在——历史上先后装过两次留下的残留,这种情况建议全部卸载后只保留一种,否则自己都说不清每次启动的是哪一份。

第二步:查注册表卸载项。 Windows 的卸载信息按范围分开存放:用户级写在 HKEY_CURRENT_USER(HKCU),机器级写在 HKEY_LOCAL_MACHINE(HKLM):

reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall" /s /f Cursor
reg query "HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall" /s /f Cursor

【待补:本机两条命令的实测输出】拿到输出就能确认卸载入口挂在哪个范围下,后面卸载重装也从这里找入口。

第三步:定位 cursor 命令的来源。 Windows 的 PATH 环境变量分”用户变量”和”系统变量”两段,应用把自己注册到哪一段,同样跟着安装范围走:

where.exe cursor
# 输出形如(具体路径以本机实测为准):
# C:\Users\<用户名>\AppData\Local\Programs\cursor\resources\app\bin\cursor

路径里出现 C:\Users\<用户名>,就是用户级;出现 C:\Program Files,就是机器级。再顺手看一眼开始菜单:用户级快捷方式在 %APPDATA%\Microsoft\Windows\Start Menu,机器级在 C:\ProgramData\Microsoft\Windows\Start Menu。这也直接解释了症状二——换一个账号登录,用户级的开始菜单和用户 PATH 都不跟着走,“消失”只是因为压根不在那个账号的可见范围里。

根因:Windows 的 per-user 与 per-machine 两套机制

安装范围不是 Cursor 发明的新概念,而是 Windows 应用几十年来的机制设计,两边差异如下:

对比项per-user(用户级)per-machine(机器级)
默认安装目录%LOCALAPPDATA%\Programs\CursorC:\Program Files\Cursor
卸载信息注册表HKCUHKLM
安装权限不需要管理员权限,无 UAC需要管理员授权(UAC)
可见范围仅当前 Windows 账号全机所有账号
应用自更新无需提权,静默完成更新时需要提权
卸载影响只影响当前账号全机生效

这套机制的典型出处是 VS Code:VS Code 官方长期同时提供 User Installer 和 System Installer 两种安装包,分别对应上表两列,官方文档对此有完整说明。Cursor 与 VS Code 同源,同为基于 Electron 技术栈的编辑器,安装器的行为模式也类似。但当前版本 Cursor 的 Windows 安装包默认装到哪个范围、官网是否区分两种包,以你手里那份安装包的实测为准【待补:当前安装包的默认安装范围】——这一条直接决定你上面三步排查会看到什么。

三大症状的对应关系也就此清楚:症状一是”你想要用户级的无感安装,实际拿到的却是需要提权的机器级安装”;症状二是”装了用户级,却期待机器级的全账号可见性”;症状三是”命令注册进了用户 PATH,而当前终端环境读不到这一段”。

修复:按场景选对装法

场景 A:个人电脑,只有你自己用。 选用户级。没有 UAC 打扰,更新不需要提权,卸载也只动自己目录,对系统最干净。对绝大多数人,这是默认答案。

场景 B:公司电脑,没有管理员权限。 只能走用户级。如果安装包仍然弹 UAC,说明当前拿到的安装方式是机器级的,回官网换用户级的安装方式重试;若公司安全策略连用户级安装也限制,找 IT 走白名单流程,由 IT 用管理员权限装机器级版本——这一步不要自己绕,绕过终端管控的风险远大于省下的等待时间。

场景 C:多人共用的电脑。 选机器级。让管理员装一次,所有账号都能用;PATH 注册在系统变量里,谁登进来 cursor 命令都直接可用,省去每个人配一遍的麻烦。

装错了想改怎么办? 卸载重装是唯一干净的路:打开”设置 → 应用 → 安装的应用”找到 Cursor 卸载(或用前面注册表排查里找到的卸载入口)。用户配置和会话历史存放在用户目录下,形如 %APPDATA%\Cursor,这是 Electron 应用的通用约定(具体以本机实测为准【待补:用户数据目录确认】),卸载程序默认不会动它,重装后配置还在。也可以先用 winget search cursor 看看有没有官方包管理入口,用包管理器装卸范围更省心(搜索结果与包 ID 以实际为准【待补:winget 包 ID】)。

验证:三处对账

重装完成后,把排查三步原样重跑一遍,全部对上才算修好:

  1. Test-Path 两条命令,返回 True 的应当只有你选定的那一个范围;
  2. reg query 只在对应的注册表 hive 里命中卸载项;
  3. 新开一个终端窗口跑 where.exe cursor,路径指向预期目录。环境变量的改动要新开窗口才生效,这是”明明修好了却没生效”的最常见原因,别跳过。

如果是场景 C(多人共用),再换另一个账号登录,验证开始菜单图标和终端命令都可用,才算全链路通过。

如何预防:装之前先回答三个问题

下次给任何 Windows 应用选安装范围,先回答三个问题:谁用——只有我,选用户级;多人共用,选机器级。有没有管理员权限——没有,只有用户级一条路。更新策略——希望应用静默自更新不被打扰,选用户级;由 IT 统一管控版本,选机器级。

一句话建议:个人电脑默认用户级,共用机器选机器级,公司管控电脑听 IT 的。拿不准时先装用户级——它的破坏面最小,之后真有全机需求,再让管理员补装机器级版本也不迟,两条路随时可以切换。

相关阅读