相关疑难解决方法(0)

HttpListener访问被拒绝

我在C#中编写HTTP服务器.

当我尝试执行该功能时,HttpListener.Start()我得到一个HttpListenerException说法

"拒绝访问".

当我在Windows 7中以管理模式运行应用程序时,它工作正常.

我可以在没有管理员模式的情况下运行吗 如果有,怎么样?如果不是,如何在开始运行后让应用程序更改为管理模式?

using System;
using System.Net;

namespace ConsoleApplication1
{
    class Program
    {
        private HttpListener httpListener = null;

        static void Main(string[] args)
        {
            Program p = new Program();
            p.Server();
        }

        public void Server()
        {
            this.httpListener = new HttpListener();

            if (httpListener.IsListening)
                throw new InvalidOperationException("Server is currently running.");

            httpListener.Prefixes.Clear();
            httpListener.Prefixes.Add("http://*:4444/");

            try
            {
                httpListener.Start(); //Throws Exception
            }
            catch (HttpListenerException ex)
            {
                if (ex.Message.Contains("Access is denied"))
                {
                    return;
                }
                else
                {
                    throw;
                }
            }
        }
    } …
Run Code Online (Sandbox Code Playgroud)

uac httplistener windows-7 c#-4.0

159
推荐指数
9
解决办法
13万
查看次数

在C#中创建简单的嵌入式http和https应用程序

有一个简单的http服务器API,允许您快速完成一些简单的操作,无需任何附加依赖/安装.

没有IIS的 .NET中是否有类似的API /库?

例如,我是一个小窗口服务运行,我想添加一个简单的愚蠢Web界面,以允许本地/远程控制/监控.

c# webserver http

8
推荐指数
2
解决办法
7408
查看次数

C#WebBrowser HTML,引用脚本和图像

我正在使用WebBrowser控件编写一个C#应用程序,我希望我显示的所有内容都来自嵌入式资源 - 而不是静态本地文件,而不是远程文件.

将控件的初始文本设置为嵌入式HTML文件非常适合此帖子启发的代码:

browser.DocumentText=loadResourceText("myapp.index.html");

private string loadResourceText(string name)
{
    Assembly assembly = Assembly.GetExecutingAssembly();
    Stream stream = assembly.GetManifestResourceStream(name);
    StreamReader streamReader = new StreamReader(stream);
    String myText = streamReader.ReadToEnd();
    return myText;
}
Run Code Online (Sandbox Code Playgroud)

就像那样,HTML中引用的文件 - javascript,图像<img src="whatever.png"/>等等都不起作用.我在这里这里找到了类似的问题,但两者都没有问我到底是什么意思,即在exe中引用嵌入式资源,而不是文件.

我尝试res://...并使用了一个<base href='..."但似乎都没有工作(虽然我可能没有做对).

也许(根据我自己对这个问题的建议),使用一个小的嵌入式C#网络服务器是唯一的方法......但是我会想到有一些技巧可以实现这一目标吗?

谢谢!

.net c# resources webserver href

6
推荐指数
1
解决办法
6248
查看次数

尝试使用HttpListener时为什么会出现"AccessDenied"?

赢7和VS2010 B2.我正在尝试使用内置编写一个最小的Web服务器HttpListener.但是,我一直收到AccessDenied异常.这是代码:

    int Run(string[] args) {

        _server = new HttpListener();
        _server.Prefixes.Add("http://*:9669/");
        _server.Start();

        Console.WriteLine("Server bound to: {0}", _server.Prefixes.First());

        _server.BeginGetContext(HandleContext, null);
    }
Run Code Online (Sandbox Code Playgroud)

如果我绑定到系统端口,我可以理解需要以管理员身份运行,但我不明白为什么我对9669的绑定应该需要特殊权限.

有任何想法吗?

.net sockets web-services

6
推荐指数
1
解决办法
1万
查看次数

如何使用localhost测试HttpListener()?

我正在开发一个HttpListener()广泛使用的应用程序.到目前为止,我一直在实际网络上进行所有测试,但我现在对此非常厌恶.

我尝试了通常的嫌疑人(localhost,127.0.0.1)和正确的端口,但没有任何反应.

Windows中的某个设置是否存在?(很明显我通常是一个*nix男孩吗?)

c# loopback httplistener

3
推荐指数
1
解决办法
2757
查看次数