c# - 需要访问 “Program Files” 文件夹

标签 c# filesystems file-access program-files

我遇到了这个经常提到的问题,但即使在查找了几乎所有资源之后,我也没有得到答案。问题如下:

我编写了一个小更新程序工具,它​​连接到服务器以检查应用程序的新版本,然后将新版本复制到客户端机器。所以模式如下:

客户端安装由我使用特定应用程序预先配置的更新程序。所以基本上更新程序位于 Program Files 文件夹中的某个位置。然后更新程序启动,连接到我们的服务器并获取最新版本并将其安装到与安装更新程序相同的目录中。所以客户不知道有两个应用程序。更新程序和更新程序的主要应用程序。我希望你能明白。

这就是我需要访问 Program Files 文件夹的原因。

我是在windows 7下开发的,该软件也可以在7上运行。

有没有办法确保更新程序由管理员运行。我需要管理员权限才能访问它吗?即使我确实拥有管理员权限,它仍然拒绝访问,还有什么?有没有办法在代码中检查用户拥有哪些权限?

最佳答案

我会将检查器和更新器分成两个不同的应用程序。检查器可以以普通用户身份运行。当它检测到有更新时,它会启动更新程序。对于更新程序,您有 a manifest that states that it needs admin rights 。这将导致提示用户授予访问权限(假定已启用 UAC)。

关于c# - 需要访问 “Program Files” 文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3511174/

相关文章:

android - 如何使用 ActionScript 3 访问 APK 文件中的资源? (土坯空气)

c# - 以只读访问模式加载 XML 文档

C# 程序列出用户和他们各自的目录路径

c# - asp.net如何计算数据表列的总和?

c++ - 当字节写入文件的偏移量 0 时,是否可以保持写入时间稳定?

c++ - QListview, QTreeview 是正确的以列表方式显示文件

C# 文件访问错误

c# - 持续引用的最佳方法或替代方案是什么?

c# - 根据标准比较两个对象

linux - 在 centos whm 和 nginx 网络服务器上扩展文件系统