为什么要为“只为我”而不是为“所有人”安装?

17 installer c# windows-installer .net-framework

我正在为客户的应用程序使用 Windows 安装程序,他们抱怨有时一个应用程序的多个实例出现在他们用于测试的计算机上。自从我隐藏了“只有我”和“所有人”的选项安装,并将其设置为为所有人安装后,这个问题就消失了。新版本大约每周下载和安装一次,并且在一段时间内出现了多个版本,即使每个安装程序都应该删除旧版本。

这有什么问题吗?我可能会遇到问题吗?

为什么有人要为“Just me”安装?

Pis*_*ing 14

“只为我”应该意味着应用程序安装到用户目录中,并且只为当前用户创建快捷方式。这可能是有用的,例如当用户不具有管理员权限(因此不能写入%PROGRAMFILES%HKEY_LOCAL_MACHINE以及其他有趣的地方)。

如果您强制“为所有人安装”,您可能会限制该应用程序,因为只有具有管理员权限的用户才能安装它。

澄清一下:如果您指定“适用于所有人”,则提示安装程序将程序安装到全局位置(例如%PROGRAMFILES%HKLM,而不是%APPDATA%HKCU)。如果您是创建安装程序的人,当然您有办法颠覆这一约定,但通常情况就是如此。


Nei*_*ell 12

我相信它源于可能拥有“家庭PC”的家庭用户。孩子们不想要“Family Tree Maker”,父母也不想要他们各自的开始菜单上的“Spongebob Squarepants - the Video Game”。


Rob*_*ers 11

嗯,我认为答案取决于您正在安装的应用程序是如何开发的。

  • 它是否将所有用户创建的数据正确地放置在用户配置文件下的适当文件夹中,还是设计为通用运行(并将用户创建的数据存储在所有用户等通用文件夹结构中)?
  • 它是依赖于用户配置文件 (HKCU) 中的注册表项还是依赖于通用注册表(例如 HKLM)。
  • 它是否需要管理权限才能执行?(如果非管理员不应该看到该应用程序,则可能是“只为我”选项的一个很好的理由)。
  • 这些只是几个值得回答的问题。

    一般来说,如果禁用“Just for me”会不会有问题?

    根据其他问题的答案(假设该应用程序对任何用户都可以正常运行),我认为这可能是安全的,但这也取决于您安装的操作系统。

    一些较新的操作系统(例如 Vista)不赞成某些设计(例如某些功能需要 UAC)或不允许修改注册表中的 HKLM。换句话说,您最好检查一下该应用程序是否对所有用户(包括非管理员)都能正常运行。