获取wcf服务的exe完整路径

时间:2012-03-30 20:38:29

标签: wcf reflection firewall

我正在创建一个wpf应用程序,它将安装在同一网络中的多台计算机上。应用程序应该与其他应用程序通信,因此我正在我的应用程序中实现WCF服务。一切都很好,没有防火墙。因此,我只是遗漏了一些代码,以便为防火墙添加一个例外。

要为程序的防火墙添加例外,我在cmd中执行以下代码(或在c#的进程中)

  

netsh firewall add allowedprogram“C:\ users..etc \ myProgram.exe”MyProgram ENABLE

问题是我不知道exe托管我的服务是什么!!!我想找出来,以便我可以添加防火墙例外。

2 个答案:

答案 0 :(得分:0)

取决于你如何设置它。可以使用命名管道通过可执​​行文件使用WCF。但是,从它的外观来看,你通过IIS托管它。部署时,不会有“exe”。

相反,您的项目将生成“dll”。此DLL将加载到现有IIS进程中并在应用程序池中运行。此应用程序池将在Web服务器(IIS)下运行,并且根据您的配置,可能会在HTTP或HTTPS下运行。

HTTP在端口80下运行,HTTPS在端口443(SSL)下运行。

答案 1 :(得分:0)

我想我唯一的选择是在防火墙中打开该端口。我认为这根本不安全。做到这一点的方法是:

首先删除它以避免重复:

  

netsh advfirewall firewall delete rule name =“Description Goes Here”dir = in protocol = TCP localport = 8732

然后添加它:

  

netsh advfirewall firewall add rule name =“Description Goes Here”dir = in action = allow protocol = TCP localport = 8732

现在每个人都可以使用该端口进行通信......