开发windows服务中要启动参数的问题

dabaicai 2007-01-30 10:43:09
对这方面不太了解, 在哪儿加,怎么加
比如要要写一个服务,启动的时候(命令行下):net start myservice -t -r
服务程序里面怎么写,另外就是后面的参数是不是一定要是字符型
谢谢
...全文
817 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jadeluo 2007-01-30
  • 打赏
  • 举报
回复
感觉没必要做成服务的,直接运行某个程序, 它能接受倒计时时间的参数, 运行之后隐藏于后台, 到了时间就关机。
dBASEIII 2007-01-30
  • 打赏
  • 举报
回复
星级大师的表达能力令人佩服。-_-!

似乎前面要问的问题,侧重点就在如何搞参数上;而似乎楼上重新命题后,参数问题又解决了,侧重点又在如何实现倒计时关机了....
dabaicai 2007-01-30
  • 打赏
  • 举报
回复
不好意思,呵呵,搞错了,jadeluo(秀峰)说的对

说我的需求吧,看看大家有没有好的办法:
做一个服务程序(就是定时关机),手动启动的,那么我希望在启动该服务的时候(就是cmd下),自己定义倒计时时间,(比如我希望3小时后关机,那么我想通过该服务启动的参数来决定 类似: net start -10000 服务开始倒计时,时间到了就关机,不想通过配置文件,有什么好办法没?)
dBASEIII 2007-01-30
  • 打赏
  • 举报
回复
program Project1;

uses
Forms,
Windows,
SysUtils,
Unit1 in 'Unit1.pas' {Form1};

{$R *.res}
var
VarIn : string;
begin
if FindCmdLineSwitch('test')
then VarIn := 'found VarIn' else VarIn := 'No VarIn';
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Form1.Caption := VarIn;
Application.Run;
end.

测试:

---->cmd
---->project1 /test
jadeluo 2007-01-30
  • 打赏
  • 举报
回复
用net start启动服务时是不能带参数的。
服务的参数是在服务中设置的, 比如COM+ Event System服务的执行文件路径为C:\WINNT\system32\svchost.exe -k netsvcs,参数是写在这个里面的,不是在启动时设置的。
dBASEIII 2007-01-30
  • 打赏
  • 举报
回复
哦。

在工程里使用FindCmdLineSwitch('参数') 吗?
dabaicai 2007-01-30
  • 打赏
  • 举报
回复
这个我知道,我是说写服务程序里面的参数入口怎么写的
dBASEIII 2007-01-30
  • 打赏
  • 举报
回复
回星级大师考题(不管对错):

ShellExecute() 或 WinExec() 或... 都是可以带参数执行的
dabaicai 2007-01-30
  • 打赏
  • 举报
回复
没人会???

16,748

社区成员

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

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