0
即時通訊使用http://managedupnp.codeplex.com/ API開放使用UPnP我的NetGear DG834G路由器下面的代碼端口..他們對UPNP/WCF移植有任何其他要求嗎?
public void UPNPOpenPort(int port)
{
Services lsServices;
lsServices = Discovery.FindServices("urn:schemas-upnp-org:service:WANPPPConnection:1");
if (lsServices.Count > 0)
using (Service lsService = lsServices[0])
{
try
{
object[] loObj = new object[] { "", port, "TCP", port, "10.0.0.100", true, "Custom Mapping", 0 };
lsService.InvokeAction("AddPortMapping", loObj);
}
catch (Exception loE)
{
MessageBox.Show(
String.Format(
"{0}: HTTPSTATUS: {1}",
loE.Message,
lsService.LastTransportStatus));
}
}
else
{
MessageBox.Show("Doh No Router Found");
return;
}
}
我有一個NetTCP同一端口IM送入子程序綁定服務宿主設置UPNP轉發,我可以在路由器配置中看到一個活動的UPNP記錄。我可以看到端口正在本地計算機上偵聽,而我的局域網上的其他PC可以連接到端口,但使用它顯示爲關閉的在線端口檢查程序,即使路由器說它應該轉發到正確的內部IP。
有沒有人有任何想法或我錯過了什麼?
最好的問候,
克里斯托弗·利奇