求助:如何关闭服务程序?

new_yang 2013-07-03 03:44:59
创建了service 程序后,关机重启动后服务已经启动,现在问题是不知道如何关掉程序(要的效果是:程序像普通程序一样关掉,但是在本地服务里面还存在,只是服务状态由已启动变成空白)
以下是我的想法但是不行:
if FFromService then
begin
WinExec(PansiChar('net stop ' + GetServiceName), SW_Hide); //停止服务
close;
end
else
begin
Application.Terminate;
end;

请问该如何改?
...全文
231 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
e我行 2013-07-03
  • 打赏
  • 举报
回复
使用API var hSCManager, hService: SC_HANDLE; // handle of service control manager ServiceStatus: SERVICE_STATUS; begin Result := False; // Open the service control manager hSCManager := OpenSCManager(nil, nil, SC_MANAGER_ALL_ACCESS); if (hSCManager <> 0) then begin hService := OpenService(hSCManager, Servicename, SERVICE_ALL_ACCESS); if (hService <> 0) then begin Result := ControlService( hService, SERVICE_CONTROL_STOP, ServiceStatus); CloseServiceHandle(hService); end; CloseServiceHandle(hSCManager); end; end;
酣酣 2013-07-03
  • 打赏
  • 举报
回复
不知道! 帮你顶一下! 呵呵!
new_yang 2013-07-03
  • 打赏
  • 举报
回复
自己顶下

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧