我在阅读包:SvcMgr源代码时发现其中对于类TService有两个定义:
TService = class;
TService = class(TDataModule)
请问这是否符合Object Pascal的语法定义?
现正在研究Delphi中服务程序的实现、和启动流程,编写了一个服务程序,在操作系统启动的时候无法启动,但登录之后,没有做任何操作,进入服务管理却可以手工启动,请教原因?
TService = class;
TService = class(TDataModule)
请问这是否符合Object Pascal的语法定义?
现正在研究Delphi中服务程序的实现、和启动流程,编写了一个服务程序,在操作系统启动的时候无法启动,但登录之后,没有做任何操作,进入服务管理却可以手工启动,请教原因?
解决方案 »
- Thread Error: Access is denied(5)
- 票据打印?
- 想用TWebbrowser组件做一个类似腾迅浏览器一样的可在Pagecontrol下多页切换的游览器,为什么总是随机的报内存错误呢?
- 求一主从表操作的例子源码, 顺祝D兄新年快乐~~~~~~~~~
- 怎样关闭一个或多个浏览器窗口?
- 一个关于TSpinEdit的小问题,在线等待!
- RMB求2个DELPHI SQL存储过程
- 如何改变DBGrid中某一个单元格的颜色(注:是某个单元格的颜色,不是一行的颜色)??
- 怎样修改打印预览中的“close”
- 请问何处有sendkey控件下载,有分
- 移动stringgrid的行,出现错误。
- DBDateTimerPicker怎么使用啊?
TService = class(TDataModule)真正的定义这个类,VCL的语法当然符合OBJECT PASCAL的定义,里面还有没多看起来怪怪的东东,但却是OBJECT PASCAL的精髓
在C里这叫前置声明,不过一般不在这个地方用,这句应该可以不用:)
启动windows没有自动启动的原因如下(仅仅是我知道的)1.转hthunter(核桃)(我将要认识一个好mm)
你的服务程序StartType是否stAuto?
2.你的程序需要其他进程的辅助比如你的程序使用了数据库,而数据库引擎还没有启动那么你的程序将会启动失败。
其实那就是服务管理器中某一个服务的“依存关系”的“该服务所依赖的服务”,一个服务假如有依赖的服务,要启动的话首先它所依赖的服务需要启动的。通过以下设置可以在所依赖服务没有启动时自动先将它启动:
设置TService的Dependencies,添加,name设置为所依赖服务的名称。
但是这样有时候也不能完全保证服务能正常启动,我当初做的一个依赖于SQL Server的服务在某些机器上就不能正常启动,我后来又作了以下设定:
在服务管理器中打开我自己的服务,在“恢复”中把“第一次失败”、“第二次失败”、“后继失败”所作的操作都设置为“重新启动服务”。ok, then
TClass2 = class;
这样就可以正确调用了
一来为人读源码方便.
二来为编译器读源码方便.