zoukankan      html  css  js  c++  java
  • win7中用 httplistener 出现 503 错误的问题

    项目中须要用httplistener提供一个简单的httpserver服务。可是执行都是提示:

    UnHandledException Message:拒绝訪问

    在System.Net.HttpListener.AddAll()

    在System.Net.HttpListener.Start()

    网上查了下,好像是UAC权限的问题,网上找到了以下的解决的方法:

    为程序加入了管理员权限执行的manifest配置文件,依旧不能解决,手动设置程序以管理员权限执行能够通过

    解决改问题的方法:

    以管理员权限执行cmd

    输入: netsh http add urlacl url=http://+:9527/icon user=DOMAINuser

    注:DOMAIN 即计算机名

    比如我的user=cmdszh_compernycmdszh

     

    把以上操作写为C#代码例如以下(主程序一定在manifest中配置UAC权限)

    public static void AddAddress(string address)
    {
    try
    {
    AddAddress(address, Environment.UserDomainName, Environment.UserName);
    }catch(Exception ex){}
    }

    public static void AddAddress(string address, string domain, string user)
    {
    string argsDll = String.Format(@"http delete urlacl url={0}", address);
    string args = string.Format(@"http add urlacl url={0} user={1}{2}", address, domain, user);
    ProcessStartInfo psi = new ProcessStartInfo("netsh", argsDll);
    psi.Verb = "runas";
    psi.CreateNoWindow = true;
    psi.WindowStyle = ProcessWindowStyle.Hidden;
    psi.UseShellExecute = false;
    Process.Start(psi).WaitForExit();//删除urlacl
    psi = new ProcessStartInfo("netsh", args);
    psi.Verb = "runas";
    psi.CreateNoWindow = true;
    psi.WindowStyle = ProcessWindowStyle.Hidden;
    psi.UseShellExecute = false;
    Process.Start(psi).WaitForExit();//加入urlacl
    }


    原文地址:http://www.cnblogs.com/cmdszh/archive/2012/08/16/httplistener.html
  • 相关阅读:
    socket的半包,粘包与分包的问题
    /dev/tty /dev/ttyS0 /dev/tty0,/dev/null区别
    23种设计模式小结
    嵌入式试题
    怎样给filter加入自己定义接口及调用
    实现Launcher默认壁纸、选择壁纸定制化功能
    javascript中的稀疏数组(sparse array)和密集数组
    【Linux学习】Linux的文件权限(一)
    HDU--5280(dp或枚举)
    UISegmentedControl UISlider
  • 原文地址:https://www.cnblogs.com/zsychanpin/p/6962144.html
Copyright © 2011-2022 走看看