Использование служб Windows [написано на C #] с использованием C # - PullRequest
1 голос
/ 24 июня 2009

Я написал службу Windows на C #, которая выполняет некоторые функции (публичный метод) после чтения файла через регулярные промежутки времени. Могу ли я использовать эту функцию из другого приложения C #? Если возможно, дайте решение, основанное на .net 2.0, а также .net 3.0

Спасибо

Ответы [ 3 ]

3 голосов
/ 24 июня 2009

Просто откройте его с помощью WCF и вызовите его из другого приложения. Они находятся в разных процессах, поэтому вы должны использовать IPC

3 голосов
/ 24 июня 2009

Самый простой вариант - записать эту функциональность в отдельную сборку (dll), которую вы используете как из службы, так и из второго приложения .NET.

Вы можете ссылаться на сервисную сборку (даже если это exe, по крайней мере в VS2008) - но это кажется немного излишним.

Если вы хотите выполнить метод в контексте работающей службы , вам понадобится IPC (возможно, WCF или сокеты).

2 голосов
/ 24 июня 2009

Зависит от того, сколько вы хотите использовать.

Если вы хотите получить доступ к запущенной службе окна, тогда предоставьте функциональность через WCF. Вы просто хотите использовать код, затем поместить его в сборку и ссылку из другого проекта / программы.

Я бы сказал, что .net 2.0 и 3.0 будут такими же, как и в последнем, но, поскольку .net 2.0 fmk не имеет WCF, я бы предложил конечную точку удаленного взаимодействия Windows для более ранней версии, если вы используете только .net 2.0. или WCF, как я уже сказал.

...