Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сервис 
:(
    Опции темы
Afrodiziac
Дата 23.3.2008, 10:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 13.5.2007

Репутация: нет
Всего: нет



Задача такова, нужно написать "нечто", что брало бы сообщения с сервера (собственный формат), а также контактную информацию о пользователях и отправляло бы ее им на почту или мобильный телефон (пейджер и т.п.).

Существуют ли готовые решения? 

Для начала решил что писать буду сервис, отправляющий по smtp письма на почту, а с мобильником разберусь позже smile, (там через шлюзы надо отправлять, как я понял).

Работа с сервисом оказалась не проста, во первых нет возможности отлаживать. Во-вторых непонятные сообщения выходят, если пытаюсь его запустить...
user posted image
Не ясно каков "критерий" использования данного сервиса... :(

И вообще, может быть я велосипед придумываю?
PM MAIL   Вверх
Afrodiziac
Дата 23.3.2008, 11:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 13.5.2007

Репутация: нет
Всего: нет



Цитата(Afrodiziac @  23.3.2008,  10:11 Найти цитируемый пост)
нет возможности отлаживать


Оказывается можно smile

To debug a service
  • Install your service. For more information, see How to: Install and Uninstall Services.
  • Start your service, either from Services Control Manager, Server Explorer, or from code. For more information, see How to: Start Services.
  • In Visual Studio, choose Processes from the Debug menu. The Processes dialog box appears. 
  • Click Show system processes.
  • In the Available Processes section, click the process for your service, and then click Attach.

Добавлено через 14 минут и 20 секунд
Допустим служба умеет отправлять письма и брать сообщения с сервера. Но нужно сделать так чтобы рассылку можно было настраивать, то есть человеку могли бы приходить только некоторые сообщения (error, warning), а также неотправленные сообщения сохранялись в БД. Понятно что служба должна знать об этих настройках, но проблема в том что в сервисе нет возможности создавать интерфейс взаимодействия с пользователем :(

msdn
"The Windows service classes supported by the .NET Framework do not support interaction with interactive stations, that is, the logged-on user. The .NET Framework also does not include classes that represent stations and desktops. If your Windows service must interact with other stations, you will need to access the unmanaged Windows API."

Можно решить эту проблему, путем создания отдельного приложения, которое бы взаимодействовало с сервисом. Тогда возникает вопрос каким образом будут взаимодействовать сервис и это приложение? Сокеты? или общая БД? Может как то на прямую можно?
PM MAIL   Вверх
Afrodiziac
Дата 23.3.2008, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 13.5.2007

Репутация: нет
Всего: нет



Нашел немного статей...
http://www.codeproject.com/KB/WCF/AppWatcher.aspx
http://www.codeproject.com/KB/install/csharpsvclesson1.aspx
http://www.codeproject.com/KB/dotnet/simpl...owsservice.aspx

Оказывается
"With Windows Vista on board the picture has slightly changed and in an unsafe manner written services running with the Flag "Allow service to interact with desktop" will not work at all."

http://www.microsoft.com/whdc/system/vista...a_Services.mspx

Почитаю выложу решение.
Но вопос о велосипеде еще актуален smile
PM MAIL   Вверх
Afrodiziac
Дата 23.3.2008, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 13.5.2007

Репутация: нет
Всего: нет



Цитата(Afrodiziac @  23.3.2008,  11:16 Найти цитируемый пост)
Оказывается можно 

И все таки нельзя :(

user posted image

нельзя сделать Attach
PM MAIL   Вверх
Afrodiziac
Дата 24.3.2008, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 13.5.2007

Репутация: нет
Всего: нет



Почему в сервисе нет возможности создавать UI окна?

PM MAIL   Вверх
Kamil
Дата 3.4.2008, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 34
Регистрация: 26.11.2006

Репутация: нет
Всего: нет



Отлаживать сервис можно. Вам не удается аттачиться к процессу, потому что сервис не запущен. Сперва вам надо разобраться с проблемой, почему ваш сервис сразу останавливается.
PM MAIL ICQ YIM   Вверх
mr.DUDA
Дата 3.4.2008, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Останавливается либо потому что ему нечего делать (ни одного потока не создано в OnStart), либо ошибка при старте (см. системный event log тогда).


--------------------
user posted image
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0572 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.