无法在C#中使用管理员权限写入hosts文件

时间:2014-09-13 15:25:57

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

我在app.manifest中关注了一行:

<requestedExecutionLevel level="requireAdministrator" />

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

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

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

我错过了什么?

感谢您的时间:)

1 个答案:

答案 0 :(得分:1)

我发现卡巴斯基反病毒软件正在阻止它而不说一句话。

经过一段谷歌搜索后,我发现它也在这里回答:https://stackoverflow.com/questions/19615128/how-to-give-permission-for-windows-form-net-program-for-editing-host-file

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

Kaspersky modify Windows files

在英语中它应该是:应用程序管理器,找到你的程序并选择属性,文件和系统寄存器 - 系统文件 - 关键设置