服务器程序使用什么技术写的?(100分)

  • 主题发起人 主题发起人 mxk130
  • 开始时间 开始时间
M

mxk130

Unregistered / Unconfirmed
GUEST, unregistred user!
在计算机 我的电脑上单击右键,“管理”中有“应用程序和服务”,我想学习一下这样的服务程序是怎样写的?用的什么技术?各位高手给指指路!谢谢
 
如果不考虑内部包含的许多复杂的软硬件操作技术,这个界面就是个典型的WINDOWS桌面程序;左边是树目录(TTREEVIEW),右边用一个TLISTVIEW控件,用DELPHI很容易实现的;
 
我想知道具体的服务程序是怎样写的?它可以启动服务,停止服务,还可以自动启动。如
alerter等
 
看书,随便找本中等程度的Delphi书,应该就有这些东西了。
Delphi开发服务程序比较容易,有TService这个基类。
 
晕哦,你指的是服务形态的应用服务器吧,这个用Delphi做和应用程序型的基本就没有区别。建立个ServiceApplication,其它的一样。
 
New->Service Application
 
这样简单呀?谁可以给我个小例子,要求能在管理中看到的,可以在管理中操作的。可以另加分呀!(虽然我知道大家并不稀罕这点分)
 
你可以参考scktsrvr的代码,在delphi的/source/vcl/ 目录下
在run中运行 scktsrvr.exe -install可以把它安装为服务,这样就可以在组件服务中管理它了
 
你new 一个 serviceapplication,然后在onstart等添加代码就可以了!
下面是部分代码!
procedure TsyipmonitorService.ServiceStart(Sender: TService;
var Started: Boolean);
begin
started:=true;
Fpaused:=false;
LogMessage('started!',EVENTLOG_INFORMATION_TYPE,0,0);
end;

procedure TsyipmonitorService.ServiceStop(Sender: TService;
var Stopped: Boolean);
begin
Stopped:=true;
Fpaused:=true;
LogMessage('stopped!',EVENTLOG_INFORMATION_TYPE,0,0);
end;

procedure TsyipmonitorService.ServicePause(Sender: TService;
var Paused: Boolean);
begin
Paused:=true;
Fpaused:=true;
LogMessage('paused!',EVENTLOG_INFORMATION_TYPE,0,0);
end;

procedure TsyipmonitorService.ServiceExecute(Sender: TService);
var
i:integer;
begin
while not(Terminated)do
begin
if not(Fpaused) then
begin
for i:=0 to 600do
begin
Sleep(100);
if Terminated then
exit;
ServiceThread.ProcessRequests(FALSE);
end;
//执行你的过程
ServiceThread.ProcessRequests(FALSE);
end;
ServiceThread.ProcessRequests(FALSE);
end;
end;

可以把!!!给分
 
后退
顶部