Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.10.07;
Скачать: [xml.tar.bz2];

Вниз

Приложение (сервис) - как сие организовать в Deiphi?   Найти похожие ветки 

 
BenGen   (2007-09-10 12:39) [0]

Здравствуйте Уважаемые!

Вопрос такой: Как написать приложение и запустить его как сервис Windows?

А то я Прописываю свою утилитку в Автозагрузку а Винда под паролем и как следствие Утилита в Автозагрузке не выполняется! А надо чтоб не вводя пароль - утилита стартанула как служба Windows!


 
BenGen   (2007-09-10 12:42) [1]

Сорри за опечатку! Delphi


 
Palladin ©   (2007-09-10 12:48) [2]

ну и пиши в виде сервиса

File\New\Other\Service Application


 
homm ©   (2007-09-10 12:51) [3]

> и как следствие Утилита в Автозагрузке не выполняется

Не запуск программ из автозагрузки — следствие пароля на учетке??? Что-то новенькое.


 
palva ©   (2007-09-10 12:55) [4]

> следствие пароля на учетке???
Следствие того, что пользователь не вошел в аккаунт, а винда висит на окне ввода пароля.


 
BenGen   (2007-09-10 12:57) [5]


> <Цитата>
>
> homm ©   (10.09.07 12:51) [3]


Чему смеёмся? Обязательное условие - на винде должен быть установлен пароль для входа в систему! А так как он имеется - всё что весит в автозапуске не звпустится пока не будет выполнен вход в систему! А надо так - когда тачку ребутнули - прога сервис стартовала без входа Пользователя в систему т.е как сервис!


 
homm ©   (2007-09-10 12:58) [6]

> [4] palva ©   (10.09.07 12:55)

Не совсем понимаю разницу между «пользователь не вошел в систему, поотму что система еше не прогрузилась» и «пользователь не вошел в систему, потому что еше не ввел пароль». Тут 2 выриаента, какая-то программа должна стартовать либо до, либо после того как пользователь вошел. Пароль вообще лесом.


 
homm ©   (2007-09-10 13:00) [7]

> [5] BenGen   (10.09.07 12:57)
> Чему смеёмся?

«Я спросил у соседа, „отчего ты так глуп“,
Он принял мои слезы за смех.»
© БГ


> А так как он имеется - всё что весит в автозапуске не звпустится
> пока не будет выполнен вход в систему!
А если не меняеться — запустится?


 
BenGen   (2007-09-10 13:01) [8]


> palva ©   (10.09.07 12:55) [4]


Совершенно верно и не оспоримо!


 
homm ©   (2007-09-10 13:01) [9]

> [7] homm ©   (10.09.07 13:00)
> А если не меняеться — запустится?

Прошу прощения, не то прочитал, но сути вопроса не меняет, пароль скорее всего непричем.


 
BenGen   (2007-09-10 13:02) [10]


> homm ©   (10.09.07 13:00) [7]


Не зависимо от того выполнен ли вход в систему - программа должна запустится!


 
homm ©   (2007-09-10 13:03) [11]

> А так как он имеется - всё что весит в автозапуске не звпустится
> пока не будет выполнен вход в систему!

А если пароля не будет, это «все в автозагрузке» запустится до входа в систему?


 
homm ©   (2007-09-10 13:03) [12]

> [10] BenGen   (10.09.07 13:02)
> Не зависимо от того выполнен ли вход в систему - программа
> должна запустится!

Вот! Наконец-то! Пароль, как я и говорил, лесом.


 
BenGen   (2007-09-10 13:05) [13]

Не хилое отступление получилось))) Так а теперь к теме!


 
Anatoly Podgoretsky ©   (2007-09-10 13:06) [14]

> BenGen  (10.09.2007 12:57:05)  [5]

Пароль тут ни причем, тоже будет и без пароля, если только не включен автоматический вход в систему, но пароль тут ни причем.


 
BenGen   (2007-09-10 13:08) [15]


> Anatoly Podgoretsky ©   (10.09.07 13:06) [14]


Спс за Навуку) Так как мне быть? В какую сторону смотреть?


 
homm ©   (2007-09-10 13:09) [16]

> [15] BenGen   (10.09.07 13:08)
> В какую сторону смотреть?

Как в какую?

в сторону [2]


 
BenGen   (2007-09-10 13:12) [17]


> homm ©   (10.09.07 13:09) [16]


емко! типо rtfm!


 
homm ©   (2007-09-10 13:14) [18]

> [17] BenGen   (10.09.07 13:12)

Почему rtfm? Меню файл видишь? По нему клацай, там пункт new… будет.

Или тебе нужна литература?


 
BenGen   (2007-09-10 13:16) [19]


> homm ©   (10.09.07 13:14) [18]


Енто мне известно! Я как енто в коде организовать! типо регистрация сервиса, запуск, остановка и т.д ...


 
palva ©   (2007-09-10 13:23) [20]

регистрация сервиса, запуск, остановка
Для регистрации (для установки службы) переписать exe-файл в нужное место и запустить его из командной строки с параметром /install
запуск: NET START <имя службы>
остановка: NET STOP <имя службы>
для автоматического запуска поставить нужные параметры в менеджере служб.


 
DVM ©   (2007-09-10 15:39) [21]


> А так как он имеется - всё что весит в автозапуске не звпустится
> пока не будет выполнен вход в систему!

До тех пор пока не будет запущен эксплорер, точнее.


 
BenGen   (2007-09-10 17:16) [22]


> DVM ©   (10.09.07 15:39) [21]


Да!


 
BenGen   (2007-09-11 06:21) [23]

Сорри! Нет ли примерчика по созданию Приложения-сервиса, если можно и это вас не затруднит, рабочего! Буду очень признателен!


 
DVM ©   (2007-09-11 10:38) [24]


> Нет ли примерчика по созданию Приложения-сервиса, если можно
> и это вас не затруднит, рабочего!

Ты Delphi запускал? Там примерчик есть среди шаблонов.


 
BenGen   (2007-09-11 10:57) [25]

Приложение создал по совету: http://www.realcoding.net/article/view/4164

Обозвал его TITservices.exe

Но приклике в трее по иконке сервиса, вылазиет ошибка:
Access Violation at Adress 0045D704 in module TITservices.exe


procedure tfabout.wmmidasicon(var message: tmessage);
var pt: tpoint;
begin
 case message.lparam of
   wm_rbuttonup: begin
       if not visible then
       begin
         setforegroundwindow(handle);
         getcursorpos(pt);
         popupmenu.popup(pt.X, pt.Y); // Место ошибки!
       end
       else
         setforegroundwindow(handle);
     end;
   wm_lbuttondblclk: if visible then
       setforegroundwindow(handle)
     else
       mipropertiesclick(nil);
 end;
end;


 
DVM ©   (2007-09-11 11:03) [26]


> Но приклике в трее по иконке сервиса, вылазиет ошибка:

Этот примерчик нерабочий в принципе. Это раз.
А для взаимодействия с сервисом и отображения иконок обычно делают отдельную программу. Это два.
Окна в сервисах - это извращение. Это три.


 
BenGen   (2007-09-11 11:06) [27]


> DVM ©   (11.09.07 11:03) [26]


Во приехали! Дык... Так как надо то?


 
DVM ©   (2007-09-11 11:09) [28]


> Так как надо то?

Так как я написал примерно. Что ты хочешь конкретно опиши?


 
BenGen   (2007-09-11 11:10) [29]

Прога пашет!
Иконка в трее весит!
При двойном клике левой кнопой мыши форма О Проге вылазиет!
Но  при клике правой кнопой мыши по иконке в трее Лезет ошибка! BenGen   (11.09.07 10:57) [25]

Как сие исправить? мне пока и ентого хватит - для своих нужд!


 
DVM ©   (2007-09-11 11:14) [30]


> Как сие исправить? мне пока и ентого хватит - для своих
> нужд!

Там бред сивой кобылы написан, ты пойми. Сервис - это такая штука, понимаешь, она может запускаться и до входа пользователя в систему и в этом случае ей просто негде будет отображать ни иконку ни прочее.

После входа пользователя в систему, если у службы отмечено "Взаимодействи с рабочим столом", то окна на десктоп она выкидывать сможет, но вот иконку она уже не добавит, если следовать тому коду, что ты привел.


 
DVM ©   (2007-09-11 11:16) [31]

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

Программу, создающую иконки сервиса в области уведомлений помещают в автозагрузку и она при старте подключается к сервису и общается с ним.


 
BenGen   (2007-09-11 11:17) [32]

Эхэхэх... то бред терь понимаю!

Мне то надо чтоб прога до входа пользователя в систему запускалась!
нафиг мне иконки терь и все те прибамбасы!


 
DVM ©   (2007-09-11 11:28) [33]


> Окна в сервисах - это извращение. Это три.

Небольшое уточнение - показывать окна из сервисов - это извращение. Создавать то в сервисах окна иногда бывает надо, например, для таймеров или для сокетов на сообщениях.


 
Сергей М. ©   (2007-09-11 11:37) [34]


> нафиг мне иконки терь и все те прибамбасы


Ну а если не иконки, то что ? Чему нужному/полезному ты собрался научить свой сервис ?


 
BenGen   (2007-09-11 12:19) [35]


> Сергей М. ©   (11.09.07 11:37) [34]


Он (сервис) по API коннектится к проге и считывает данные GUID и если системное время 1 число 0:00 часофф обнуляет данные для GUID!
а если не 1 число и он Сервис уже обнулял данные (ведёт запись в фаил с расширением *.dat) то он сидит в трее и ждёт следующего 1 числа в 0:00 часофф (мониторит сист время раз в 3 сек) загрузка проца 0% 1,7 метра в памяти!

Сам код мониторига пашет на ура а вот как прально сервис замутить я ужо в сомнениях!


 
Riply ©   (2007-09-11 12:29) [36]

> [35] BenGen   (11.09.07 12:19)
>Он (сервис) по API коннектится к проге и считывает данные GUID и
>если системное время 1 число 0:00 часофф обнуляет данные для GUID!
>а если не 1 число и он Сервис уже обнулял данные (ведёт запись в фаил с расширением *.dat)
>то он сидит в трее и ждёт следующего 1 числа в 0:00 часофф (мониторит сист время раз в 3 сек)
>загрузка проца 0% 1,7 метра в памяти!
Ничего не поняла.
А можно еще раз объяснить, что он (сервис) делает ?


 
BenGen   (2007-09-11 12:51) [37]

Riply ©   (11.09.07 12:29) [36]

Да енто и не важно :) Важно правельно сервис замутить а код то я впишу куды нужно! ИМХО!


 
Riply ©   (2007-09-11 12:59) [38]

>[37] BenGen   (11.09.07 12:51)
>Да енто и не важно :) Важно правельно сервис замутить а код то я впишу куды нужно! ИМХО!
Вообще-то важно. Не все работает одинаково в сервисе и в обычном приложении :)

>[23] BenGen   (11.09.07 06:21)
>Сорри! Нет ли примерчика по созданию Приложения-сервиса,
>если можно и это вас не затруднит, рабочего! Буду очень признателен!
Смотри исходники от Rouse_. У него там есть хороший пример.


 
Сергей М. ©   (2007-09-11 13:23) [39]


> Важно правельно сервис замутить а код то я впишу куды нужно


Т.е. код сервиса сам по себе, а твой прикладной код тож сам по себе ? Их работа, по твоему, друг от друга никак не зависят ?

Наивный чукча-писатель)


> он сидит в трее


Ему что, больше "сидеть" негде, кроме как "в трее" ? Что он там забыл ?)

Для тебя, вероятно, будет откровением, что в трее кроме иконок никто не "сидит" и "сидеть" не может. Кто ж его "посадит" ? Он же сервис !))


 
BenGen   (2007-09-11 13:52) [40]


> Сергей М. ©   (11.09.07 13:23) [39]


1) Если вы гуру - то включите интерператор! (совет от Администрации сего ресурса!)
2) Не чюкча-писатель! (скромнее батенька... скромнее)
3) Про Откровения! см. пункт № 1)


> Riply ©   (11.09.07 12:59) [38]


Ели вам многоуважаемая нужен листинг моего (приведенного) кода!
То сие могу залить вам на мыло и вы - разъясните сможет он работать или нет в сервисе!



Страницы: 1 2 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.10.07;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.54 MB
Время: 0.043 c
2-1189500997
RomanH
2007-09-11 12:56
2007.10.07
Бвстрая замена символа на символ


15-1189260192
Yaloka
2007-09-08 18:03
2007.10.07
Интерфейс Delphi 2005


15-1189157936
Kostafey
2007-09-07 13:38
2007.10.07
Восстановление заменненных при копировании файлов


15-1189498737
Desdechado
2007-09-11 12:18
2007.10.07
Чем искать текст в большой пачке PDF-ок?


4-1175766573
Степан Журавлев
2007-04-05 13:49
2007.10.07
GetParent





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский