4

我正在 VS10 上编写一个 C# GUI 应用程序。它所需的功能之一是检查某个文件的内容,如果需要更新 - 必须以管理员模式更新。写入清单文件会强制应用程序以管理员模式运行,而不管文件内容如何,​​这是不可取的(只是因为它很痛苦)。有没有办法在运行时提示管理员模式并且仅在需要时提示?谢谢!

4

2 回答 2

4

不幸的是,您不能在运行时升级。

为了实现相同的目标,请将更新文件的代码分离到其自己的可执行文件中,该可执行文件通过其清单具有管理员访问权限。

从您的主应用程序运行此应用程序允许您在必要时请求管理员访问权限,而不会不必要地升级其余代码的权限。

于 2012-09-03T06:08:01.280 回答
2

我相信解决方案是让应用程序在需要时以管理员模式重新启动。

一个快速的谷歌揭示:

来自代码项目

但我确实同意@WillEddins 的回答......将管理员“模式”代码分离到不同的可执行文件中会“更好”(如果可能/实用)。我想这将取决于(除其他事项外,例如努力/成本/收益/风险)管理功能与非管理功能的紧密集成程度。

于 2012-09-03T06:01:10.867 回答