Running this code as a regular user throws HttpListenerException (access denied). Snippet runs ok as an administator
class Program { static void Main(string[] args) { HttpListener listener = new HttpListener(); listener.Prefixes.Add('http://myip:8080/app/'); listener.Start(); //.... and so on } }
i went ahead and added the uri using netsh (netsh http show lists the uri)
netsh http add urlacl url=http://+:8080/app user=domain\user
still getting the same error. Adding ACLs did work for other projects (they didn’t use HttpListener though). I tried multiple port/application name combinations, nothing works.
Any ideas what might be the cause?
Running .Net 3.5 SP1 on Vista
I do not understand why but here it is. It seems that the cause is that my network card is configured with 2 IPs.
if in the code i specify one of the ips (like i did in question above)
then to avoid exception i need to register it with IP-bound weak wildcard
however if i add prefix with the strong wildcard (plus sign)
and register with the same wild card
then there is no error and i can access my app from both ip.