首页 > 其他分享 >服务之:urlacl解决服务HttpListener监听url需要管理员

服务之:urlacl解决服务HttpListener监听url需要管理员

时间:2023-05-30 14:57:18浏览次数:34  
标签:urlacl http string url HttpListener address 监听

在使用HttpListener 监听url时,如果没有以管理员身份运行可能会抛出异常,无法监听,遇到这个问题时,可以先使用管理员权限的程序将Url注册到urlacl列表,解决普通权限无法开启监听问题

第一步: Netsh http show urlacl。查看有没有需要监听的url

 第二步:添加Url到Urlacl: 例如添加   "http://+:55474/"

 /// <summary>
        /// 注册Url
        /// </summary>
        private void RegisterUrl()
        {
            var netshManger = new NetshManger();
            string url = "http://+:55474/";
            netshManger.AddAddress(url);
        }
 /// <summary>
    /// Netsh管理
    /// </summary>
    public class NetshManger
    {
        /// <summary>
        /// 添加url
        /// </summary>
        /// <param name="address"></param>
        public void AddAddress(string address)
        {
            try
            {
                AddAddress(address, Environment.UserDomainName, Environment.UserName);
            }
            catch (Exception ex)
            {
                Debug.Fail(ex.ToString());
            }
        }

        public void AddAddress(string address, string domain, string user)
        {
            string argsDll = $@"http delete urlacl url={address}";
            string args = $@"http add urlacl url={address} user=everyone";       //{domain}\{user}"
            ProcessStartInfo psi = new ProcessStartInfo("netsh", argsDll)
            {
                Verb = "runas",
                CreateNoWindow = true,
                WindowStyle = ProcessWindowStyle.Hidden,
                UseShellExecute = false
            };
            Process.Start(psi)?.WaitForExit();//删除urlacl

            psi = new ProcessStartInfo("netsh", args)
            {
                Verb = "runas",
                CreateNoWindow = true,
                WindowStyle = ProcessWindowStyle.Hidden,
                UseShellExecute = false
            };
            Process.Start(psi)?.WaitForExit();//添加urlacl
        }
    }

 

标签:urlacl,http,string,url,HttpListener,address,监听
From: https://www.cnblogs.com/terryK/p/17443210.html

相关文章

  • npm install ERR_INVALID_URL错误
    我在terminal中设置了proxy后,开启proxyon后,执行npminstall包错误: 把proxyoff后,错误又没有了,不知道是啥问题。下面的文章可能有作用:https://weekendprojects.dev/posts/how-to-fix-npm-err_invalid_url/#:~:text=The%20%E2%80%9CNPM%20ERR_INVALID_URL%E2%80%9D%20error%20occ......
  • Curl 输出耗时信息
    操作方法默认情况下,curl不会输出耗时信息,若需要输出耗时,需要使用-w,--write-outFORMAT选项配置WriteOut格式。curl-w"\n\ntime_total:%{time_total}s\n"https://www.example.comWriteOut中支持的变量请参考:https://everything.curl.dev/usingcurl/verbose/wri......
  • JAVA restemplate 通过application/x-www-form-urlencoded访问
    试了好几种方法都不行,要么返回空,要么报错。最后就这种方法可以返回数据。MultiValueMap<String,Object>psp=newLinkedMultiValueMap<>();psp.add("aaa","xxxxx");psp.add("bbb","xxxxxxxxxxxxx");psp.add(&quo......
  • 银联notifyurl报错302重定向的问题排查,太奇怪了!AspxAutoDetectCookieSupport=1
    用银联的notifyurl接收通知,某一天突然通知没有了,日志里直接没有,就和银联的人一起查,发现错误302重定向。这个notifyurl用浏览器可以正常打开。但是发现打开后会自动追加一段:AspxAutoDetectCookieSupport=1。于是搜,最终发现问题如下图:在会话状态里cookie模式改成了自动检测,导致iis......
  • 详解URL和URLSearchParams
    URL,称为统一资源定位器,指互联网上能找到资源定位的字符串。在一般语境中,又称网络地址或链接,当我们需要访问某个网页就需要输入对应的网址字符串,而这个网址就是URL。前端对于网址链接,提供了URL对象,可以用于创建或解析网址字符串信息;而Nodejs中也有相应模块来处理网址,同样支持URL类......
  • amzon s3/minio获取预签名上传url,及js使用预签名url上传文件
      $("#btnSubmit").click(function(event){varfile=$("#ipfile")[0].files[0];varcontentType=!!file.type?file.type:"video/x-flv";//请求api接口:调用amzons3/minio的sdk获取临时上传......
  • Jmeter函数助手27-urlencode
    urlencode函数用于将字符串进行application/x-www-form-urlencoded编码格式化。StringtoencodeinURLencodedchars:填入字符 1、urlencode函数将字符进行编码格式化,而urldecode函数则是将编码进行解码,两者功能刚好相反。${__urlencode(value="hello"+"word"&name="名......
  • Jmeter函数助手28-urldecode
    urldecode函数用于解码application/x-www-form-urlencoded字符串。StringtoencodeinURLencodedchars:填入application/x-www-form-urlencoded字符串 1、urlencode函数将字符进行编码格式化,而urldecode函数则是将编码进行解码,两者功能刚好相反。${__urlencode(value="......
  • Flask008_构造 URL
    通过url_for函数构造URL。url_for接收视图函数名作为第1个参数,以及其他URL定义时的参数,其他参数添加到URL的后面作为查询字符串参数。[email protected]('/blog/<int:blog_id>')2defblog_detail(blog_id):3returnf"您查找的博客id为{blog_id}"[email protected]......
  • 从输入URL到页面加载发生了什么?
    1、首先进行DNS域名解析,目的是找到对应的ip地址DNS解析过程:首先搜索浏览器自身的DNS缓存-----》没有找到则去本机的host文件中找-------》发起DNS递归查询,先查本地域名服务器———》根域名服务器———》com顶级域名服务器直到最后本地域名服务器得到google的IP地址并把它缓存......