【问题标题】:Cannot write to hosts file with admin privileges in C#无法在 C# 中以管理员权限写入主机文件
【发布时间】:2014-09-13 15:25:57
【问题描述】:

我在 app.manifest 中有以下行:

<requestedExecutionLevel level="requireAdministrator" />

我正在写这样的主机文件:

File.AppendAllText(Settings.hostsPath,
             Environment.NewLine
             + "127.0.0.1 " + url);

然后我通过 VS 运行它,它工作得很好。但是当我从独立的 exe 文件运行它时,它不会让我写入主机文件。我试过以管理员身份手动运行文件,但没有帮助。

我错过了什么?

感谢您的宝贵时间 :)

【问题讨论】:

  • 抛出了什么异常?
  • 拒绝访问路径“C:\Windows\System32\drivers\etc\hosts”。
  • 您是否尝试过关闭您可能正在运行的任何防病毒程序? hosts 文件是许多防病毒程序对其进行特殊保护的主要目标。
  • @itsme86 是的,卡巴斯基阻止了它。如果它显示一些警告之类的东西也许还不错......谢谢:)

标签: c# winforms .net-3.5 privileges hosts


【解决方案1】:

我发现卡巴斯基杀毒软件一言不发地阻止了它。

在谷歌搜索后,我发现它也在此处得到了回答:https://stackoverflow.com/questions/19615128/how-to-give-permission-for-windows-form-net-program-for-editing-host-file

有一个屏幕截图,您可以在卡巴斯基中更改它(对不起,它是捷克语,没有英语选项:/)

英文应该是这样的:应用程序管理器,找到你的程序并选择属性、文件和系统注册-系统文件-关键设置

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-18
    • 2016-09-17
    • 2013-04-10
    • 2011-06-06
    • 2012-08-03
    • 2011-08-31
    • 2011-04-05
    • 1970-01-01
    相关资源
    最近更新 更多