为什么安装很多程序都会需要管理员权限

孙大诚_SunRobin 2015-12-09 09:31:38
很多网上下载的exe程序在安装的时候,多需要管理员权限。

还有就是自己用InstallShield组装的安装包,别人在安装的时候,也提示管理员权限。但是我这个程序的运行内容并没有访问什么特别的文件啊?

为什么都需要管理员权限呢?
...全文
1723 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
秋的红果实 2015-12-10
  • 打赏
  • 举报
回复
成形的安装包,右键,好像属性里可以改的,生成安装包时,看有没有选项设置
Saleayas 2015-12-10
  • 打赏
  • 举报
回复
IS Installation Designer | Media | Releases | IMAGE | Setup.exe | Required Execution Level 下 选择 Invoker 。
孙大诚_SunRobin 2015-12-09
  • 打赏
  • 举报
回复
引用 5 楼 Saleayas 的回复:
IS 制作安装包的时候,会把安装包设置为需要高权限。 不管这个高权限是否被使用。 你可以在制作的时候取消这个。 至于为什么使用高权限,是因为安装中执行的文件复制,注册表操作需要高权限。 比如缺省的安装目录 ProgramFiles 中创建目录和写入文件等等。 现在很多部署是不需要这种权限的。 她们安装在 AppData 下。 我见到最呕心的就是百度云管家,她们需要使用管理员安装,但是安装在管理员的 AppData 下。 普通用户看不到安装的应用程序。 而且它们还不让选择安装在 ProgramFiles 下。所以每一次为了安装百度,我都是修改当前用户的权限到管理员, 然后再改回来。
请问,怎么才能够在InstallShield中,在制作安装包的时候取消管理员权限呢? 我试了很多方式,都不行。
Saleayas 2015-12-09
  • 打赏
  • 举报
回复
IS 制作安装包的时候,会把安装包设置为需要高权限。 不管这个高权限是否被使用。 你可以在制作的时候取消这个。 至于为什么使用高权限,是因为安装中执行的文件复制,注册表操作需要高权限。 比如缺省的安装目录 ProgramFiles 中创建目录和写入文件等等。 现在很多部署是不需要这种权限的。 她们安装在 AppData 下。 我见到最呕心的就是百度云管家,她们需要使用管理员安装,但是安装在管理员的 AppData 下。 普通用户看不到安装的应用程序。 而且它们还不让选择安装在 ProgramFiles 下。所以每一次为了安装百度,我都是修改当前用户的权限到管理员, 然后再改回来。
孙大诚_SunRobin 2015-12-09
  • 打赏
  • 举报
回复
引用 2 楼 caozhy 的回复:
安装程序需要访问注册表和文件系统中的公共部分(所有用户共享的位置)。这是很敏感的。出于防范病毒和恶意软件的需要,windows不允许一般用户权限访问它们。
访问注册表可以理解,而我的程序在安装过程中也没有访问注册表。但是访问文件系统,是什么意思啊,请教。
孙大诚_SunRobin 2015-12-09
  • 打赏
  • 举报
回复
引用 1 楼 wyd1520 的回复:

因为他需要访问一些特定的目录,或调用一些只有官理员访问的API。


那现在的问题是,是不是所有的exe安装程序都需要管理员权限来安装。比如我自己写了一个安装程序,设置到安装目录不是Program Files,而是用户自己的AppData目录,可是依然提示需要管理员权限。那么,到底是哪些操作需要管理员权限了???
threenewbee 2015-12-09
  • 打赏
  • 举报
回复
安装程序需要访问注册表和文件系统中的公共部分(所有用户共享的位置)。这是很敏感的。出于防范病毒和恶意软件的需要,windows不允许一般用户权限访问它们。
本拉灯 2015-12-09
  • 打赏
  • 举报
回复
因为他需要访问一些特定的目录,或调用一些只有官理员访问的API。
忘丿殇 2015-12-09
  • 打赏
  • 举报
回复
可以改程序的权限~http://www.jb51.net/article/59303.htm

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧