Delphi 服务程序[1] 介绍

Delphi 服务程序[1] 介绍

1、系统服务优点:

  • 随系统启动而启动,不需要用户手动执行,适合做后台检测程序等
  • 不用登录系统即可运行
  • 在后台运行,不与Windows桌面相互影响
  • 拥有System权限,在任务管理器中无法结束运行

2、系统服务和桌面程序的区别是:

  • 系统服务不用登陆系统即可运行;
  • 系统服务是运行在System Idle Process/System/smss/winlogon/services下的,而桌面程序是运行在Explorer下的;
  • 系统服务拥有更高的权限,系统服务拥有Sytem的权限,而桌面程序只有Administrator权限;
  • 在Delphi中系统服务是对桌面程序进行了再一次的封装,既系统服务继承于桌面程序。因而拥有桌面程序所拥有的特性;
  • 系统服务对桌面程序的DoHandleException做了改进,会自动把异常信息写到NT服务日志中;
  • 普通应用程序启动只有一个线程,而服务启动至少含有三个线程。(服务含有三个线程:TServiceStartThread服务启动线程;TServiceThread服务运行线程;Application主线程,负责消息循环);

3、Windows不建议在服务程序中与桌面有交互:

  • 在Windows Xp及以前的版本Windows服务和用户桌面还运行在一个session下,所以服务程序还可以比较轻松的与桌面进行交互。
  • 但是自Windows Vista及以后的系统中,服务程序是运行于session0中,而第一个启动的用户则运行于session1中,要想在服务中显示桌面或者与桌面程序交互要使用很复杂的技术,甚至用CreateProcess和ShellExecute启动的应用程序都无法在用户桌面中显示。

 

4、Delphi 创建服务步骤:

New->Other->Service Application

 

 

 

创建时间:2021.01.21  更新时间:

 

posted on   滔Roy  阅读(628)  评论(0编辑  收藏  举报

编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报

导航

点击右上角即可分享
微信分享提示