【发布时间】:2014-08-15 16:16:45
【问题描述】:
大家好,我使用下面的代码将端口 9090 转发到我的笔记本电脑
NATUPNPLib.UPnPNAT upnpnat = new NATUPNPLib.UPnPNAT();
NATUPNPLib.IStaticPortMappingCollection mappings = upnpnat.StaticPortMappingCollection;
mappings.Add(9090, "TCP", 9090, "192.168.1.104", true, "ProApp-SHARE");
以及此防火墙权限代码
string command = "netsh http add urlacl url=http://" + "192.168.1.104" + ":" + "9090" + "/ user=everyone";
StreamWriter ns = new StreamWriter(Application.StartupPath + @"\fw.bat", false);
ns.WriteLine(command);
ns.Close();
Process n = new Process();
n.StartInfo.FileName = Application.StartupPath + @"\fw.bat";
if (System.Environment.OSVersion.Version.Major >= 6)
{
n.StartInfo.Verb = "runas";
}
n.Start();
当我这样做时,我可以从互联网访问我在 192.168.1.104:9090 上运行的本地网站,但在 30 秒到 1 分钟后它刚刚被禁用,我必须再次运行这些代码,有人可以帮我吗有了这个???
【问题讨论】:
标签: c# iis portforwarding upnp