Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

установка служб в win2k/xp

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
topsel



Зарегистрирован: 29.01.2005
Сообщения: 10
Откуда: vladivostok

СообщениеДобавлено: Сб Янв 29 2005 02:58    Заголовок сообщения: установка служб в win2k/xp Ответить с цитатой

написал на delphi6 при помощи мастера службу для win2k/xp, теперь возмикла проблема с установкой ее в систему, как ни пробывал не получается. даже в реестре ее ручками прописал по примеру установленного сервиса, а оно не отображается ни в диспетчере задач, ни на вкладке управления сервисами. что не так не знаю.
вот код моей службы. пожалуйста помогите!!!
unit server;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, SvcMgr, Dialogs,
ScktComp, ExtCtrls;

type
TNPWServer = class(TService)
ServerSocket1: TServerSocket;
procedure ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);

procedure ServiceCreate(Sender: TObject);
procedure ServiceStart(Sender: TService; var Started: Boolean);
private
{ Private declarations }
public
function GetServiceController: TServiceController; override;
{ Public declarations }
end;
TimeColntroll = class(TThread)
private
{ Private declarations }
protected
procedure Execute; override;
end;

var
NPWServer: TNPWServer;
data: array[0..500] of string;
count,count1:integer;
time_last:integer;
implementation

uses datamodule;

{$R *.DFM}

FUNCTION MY_TIMER(time_sleep:integer):BOOLEAN;
var
time_now, long, i:INTEGER;
str, letter,word:string;
begin
result:=false;
str:=datetimetostr(now);
long:=length(str);
for i:=1 to 2 do
begin
letter:=str[long-2+i];
word:=word+letter;
end;
time_now:=strtoint(word);
if ((time_now-time_last)>time_sleep)or (time_last>time_now) then
begin
time_last:=time_now;
word:='';
result:=true;
end;
end;
procedure ServiceController(CtrlCode: DWord); stdcall;
begin
NPWServer.Controller(CtrlCode);
end;

function TNPWServer.GetServiceController: TServiceController;
begin
Result := ServiceController;
end;

procedure TNPWServer.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
begin
data[count]:=socket.ReceiveText;
count:=count+1;
if count=501 then
count:=0;
end;
procedure TimeColntroll.Execute;
var
data1:array[0..4]of string;
g,j,i,reset:integer;
s,str,letter:string;
label start;
begin //open0
while true do
begin
if My_timer(1)=true then
begin//open main
g:=0;
j:=1;
s:='';
str:='';
while count1<>count do
begin //open1
s:=data[count1];
if s<>'' then
begin //open2
while j<=length(s) do
begin //open3
letter:=s[j];
if letter='-' then
begin //open4
g:=0;
letter:='';
str:='';
end;//close 4
if letter='+'then
begin //open5
data1[g]:=str;
str:='';
letter:='';
g:=g+1;
end; //close5
if letter='@' then
begin //open6
data1[4]:=str;
g:=0;
letter:='';
str:='';
datamodule2.ADOTable1.Open;
datamodule2.ADOTable1.Edit;
datamodule2.ADOTable1.RecNo:=datamodule2.ADOTable1.RecordCount+1;
datamodule2.ADOTable1.Insert;
datamodule2.ADOTable1.FieldByName('computer name').AsString:=data1[0];
datamodule2.ADOTable1.FieldByName('printer model').AsString:=data1[1];
datamodule2.ADOTable1.FieldByName('user name').AsString:=data1[2];
datamodule2.ADOTable1.FieldByName('printed').AsString:=data1[3];
datamodule2.ADOTable1.FieldByName('date').AsDateTime:=STRTodate(data1[4]);
datamodule2.ADOTable1.Post;
datamodule2.ADOTable1.Close;
end;//close6
if (letter<>'-') or (letter<>'+')then
str:=str+letter;

j:=j+1;
end;//close3
end;//close2
count1:=count1+1;
if count1=501 then
count1:=0;
if s='' then
count1:=count1+1;
end;//close1
end;//close main
end;
end;//close0



procedure TNPWServer.ServiceCreate(Sender: TObject);
begin

end;

procedure TNPWServer.ServiceStart(Sender: TService; var Started: Boolean);
begin
time_laST:=0;
TimeColntroll.Create(FALSE).Priority:=tpLower;
end;

end.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Valera



Зарегистрирован: 26.12.2003
Сообщения: 133

СообщениеДобавлено: Ср Фев 02 2005 09:48    Заголовок сообщения: Ответить с цитатой

myservice -install | -uninstall
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...