为什么 Vista 不允许在非管理员帐户上创建“程序”的快捷方式?不应该从非管理员帐户安装应用程序?

StackOverflow https://stackoverflow.com/questions/57759

我正在开发一个安装程序(使用 Wise Installer,1999 年的旧版本)。

我正在程序组中创建 EXE 的快捷方式。我还在桌面上创建了一个快捷方式。

如果从管理员帐户运行安装,则我在公共桌面和公共程序组上创建快捷方式(即从 HKEY_LOCAL_MACHINE\Explorer\Shell for All Users 读取)。如果它是从非管理员帐户安装的,那么我会安装到 HKEY_CURRENT_USER 的桌面和程序组。

行为

安装在:

XP非管理员 - 桌面和程序快捷方式安装正常。

维斯塔管理员 - 桌面和程序快捷方式安装正常。

Vista 非管理员,UAC 关闭- 桌面快捷方式安装,但程序快捷方式不安装. 。不过,节目组 文件夹 他们应该安装到 被创建。

安装结束时,我启动具有快捷方式的程序组。它在上述所有内容中启动。我可以手动将快捷方式拖到该文件夹​​中,效果很好。

我真他妈的困惑。

我尝试安装一些其他商业应用程序(Opera、Foxit、FireFox),只有 FireFox 会安装在非管理员下(并且只有当您选择除程序文件之外的其他内容时,我知道非管理员帐户不能使用程序文件)。FF不会安装卸载图标,也没有从删除程序中卸载支持。

我尝试安装 IE 7 并且它 需要管理员 安装。它甚至不会使用临时提升的管理员权限进行安装。

也许这个想法是您不应该从非管理员帐户在 Vista 中安装软件?

有帮助吗?

解决方案

Vista 做了一些漂亮的透明重定向,以提供与非 Vista 应用程序的向后兼容性。尝试以非管理员身份安装到“所有用户”位置,Vista 应该透明地将您的快捷方式放置在该用户独有的位置。

其他提示

当用户开始在 Vista 上安装时,我创建的安装程序出现了权限问题。解决我的问题的方法是将安装程序重命名为 install.exe (或 setup.exe)。

-戴夫

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top