Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Service Application [D7, WinXP]


Intr ©   (2004-12-09 21:24:00) 

1)почему отказывается работать, если вдруг в проге встретится переменная типа TStrings или TStringList...?? служба не останавливается а просто виснет на том месте кде встречаються такие переменные...
2)нечитает информацию из реестра...  почему? и как заставить?

P.S.  Заранее сенкс. Впервые столкнулся с написанием служб, буду рад любой линке на русскоязычную справку по сабжу или помощи от вас )))


Intr   (2004-12-10 01:14:00) [1]

Аа!... еее   c Tregistry все получилось !! уря!  сенкс за помощь :))


Intr   (2004-12-10 00:51:00) [2]

=Е


Игорь Шевченко   (2004-12-10 00:49:00) [3]

Intr   (10.12.04 00:09) [6]


> Ээ..мм.....   failed to create key ...


Сочувствую. Обратитесь к разработчику.

С уважением,


Intr   (2004-12-10 00:09:00) [4]

Ээ..мм.....   failed to create key ...


Игорь Шевченко   (2004-12-09 23:55:00) [5]

Intr   (09.12.04 22:12) [3]

после
Reg:=TReginifile.Create('Software');
вставить
Reg.Rootkey := HKEY_LOCAL_MACHINE;
и, соответственно, перенести туда все настройки сервиса (оптимальный способ).

или запускать сервис от конкретного пользователя, указав его в настройках сервиса.

С уважением,


Intr   (2004-12-09 23:53:00) [6]

up =)))


Intr   (2004-12-09 22:12:00) [7]

"...Если из HKEY_CURRENT_USER..."
ага, из него....


Intr   (2004-12-09 22:10:00) [8]

[quote]
var Reg:TRegIniFile;
....
Reg:=TReginifile.Create('Software');
Reg.OpenKey('SimplyServersMonitor',True);
Timer1.Interval:=(strtoint(Reg.ReadString('Delay', 'min','1'))*60*1000);
strO:=Reg.ReadString('Openpath', 'path', 'C:\hosts');
strS:=Reg.ReadString('Savepath', 'path', 'C:\alive');
if Regi.ReadString('AutoStart', 'bool', 'True')='False' then begin
Service1.DoStop;
end;
reg.Free;
[/quote]
собсно...  нифга не читает реестр (((

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


Игорь Шевченко   (2004-12-09 22:02:00) [9]

Слишком мало информации, чтобы дать конкретный ответ. Код бы в студию надо. TStringList не может сам по себе являться причиной некорректной работы сервиса.


> 2)нечитает информацию из реестра...  почему? и как заставить?


Если из HKEY_CURRENT_USER, то причина может быть в том, что CURRENT_USER у сервиса свой. А может быть в другом. Без кода невозможно дать конкретный ответ.

С уважением,


Наверх

Титульная страница Поиск, карта сайта Написать письмо