我正在用桌面和移動應用程序組件編寫應用程序。桌面應用程序正在用c#編寫,我希望能夠打開它作爲移動應用程序的服務器(類似於AirVideo的服務器)。如何在不需要用戶配置其防火牆和/或路由器的情況下完成此任務?如何允許遠程連接到我的.net應用程序?
理想情況下,我想在桌面應用程序中自行託管一個寧靜的wcf服務。我已經試過了,但防火牆的自動配置不允許遠程連接到wcf服務,因爲它似乎是由系統進程託管的。有這種行爲的解決方法嗎?
編輯:我已經解決了路由器問題,儘可能通過使用NATUPnP COM庫(http://pietschsoft.com/post/2009/02/05/NET-Framework-Communicate-through- NAT-路由器,通過-UPnP.aspx)。我仍然需要知道如何通過防火牆遠程連接到自行託管的WCF服務,而無需任何手動配置防火牆(我可以在用戶提示符允許連接後啓動應用程序)。
當使用WCF時,您配置什麼類型的端點?最壞的情況下,您應該能夠通過HTTP/HTTPS進行通信,而無需更改任何防火牆。你也可以看看微軟的UPnP框架:http://msdn.microsoft.com/en-us/library/windows/desktop/aa382303(v=vs.85).aspx –
現在我使用webHttpBindings,因爲我想該服務將成爲REST服務。我沒有和配置結婚,所以如果有另一種類型的端點沒有被守護進程託管,我會考慮它。 – Todd