Получить exe полный путь службы wcf - PullRequest
0 голосов
/ 31 марта 2012

Я создаю приложение wpf, где оно будет установлено на нескольких компьютерах в одной сети. Приложение должно общаться с другими приложениями, поэтому я внедряю службу WCF в свое приложение. Все отлично работает без брандмауэра. В результате я просто пропускаю некоторый код, чтобы добавить исключение в брандмауэр.

Чтобы добавить исключение в брандмауэр для программы, я выполняю следующий код в cmd (или в процессе в c #)

netsh firewall добавляет разрешенную программу "C: \ users..etc \ myProgram.exe" MyProgram ENABLE

проблема в том, что я не знаю, какой exe хостинг мой сервис !!! Я хотел бы выяснить это, чтобы добавить исключение брандмауэра.

Ответы [ 2 ]

0 голосов
/ 31 марта 2012

Полагаю, мой единственный вариант - открыть этот порт в брандмауэре. Я думаю, что это совсем не безопасно. способ сделать это:

Сначала удалите его, чтобы избежать дубликатов:

netsh advfirewall firewall delete rule name = "Описание идет сюда" dir = в протоколе = TCP localport = 8732

затем добавьте его:

netsh advfirewall firewall add rule name = "Описание идет сюда" dir = в действии = разрешить протокол = TCP localport = 8732

теперь каждый сможет использовать этот порт для связи ...

0 голосов
/ 31 марта 2012

Зависит от того, как вы его настроили.Можно использовать WCF через исполняемый файл с использованием именованных каналов.Но, судя по всему, вы размещаете его через IIS.При развертывании не будет «exe».

Вместо этого ваш проект сгенерирует «dll».Эта библиотека будет загружена в существующий процесс IIS и запущена в пуле приложений.Этот пул приложений будет работать на веб-сервере (IIS) и, в зависимости от вашей конфигурации, вероятно, будет работать по протоколу HTTP или HTTPS.

HTTP работает через порт 80, а HTTPS работает через порт 443 (SSL).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...