Форум: "Начинающим";
Текущий архив: 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