Delphi开发的exe程序添加为系统服务启动,请教下问题
我通过instsrv.exe和srvany.exe这2个工具把我开发的程序添加到了系统服务,可以设置开机启动,但是服务显示是已启动,可是在桌面却看不到该程序的界面,然后我...
我通过instsrv.exe和srvany.exe这2个工具把我开发的程序添加到了系统服务,可以设置开机启动,但是服务显示是已启动,可是在桌面却看不到该程序的界面,然后我在服务的属性中的登录选项卡设置‘服务可与桌面交互’, 结果我再启动服务,就弹出个交互消息,我点显示消息然后界面出来了,可是界面上的文字都看不到,按钮上的文字也没了,就一个空框框,哪位有知道的给个配置方式,万分感谢! 其实我主要的要求就是:把exe添加到系统服务,可设置开机启动,和其他的系统服务一样,然后在服务启动后可以自动在桌面显示该exe程序的界面!!!
展开
3个回答
展开全部
系统服务都是运行后台的无窗口程序,如驱动等。系统服务装载的时候,Windows 界面接口、字体驱动还没有装载,所以你的程序不可能出现,因为你的程序有窗口(Tform)。等到进入Windows时,你的程序的生命期(加载字体)过程已经过去,所以你根本看不到什么。
注册表run里面的程序是Windows界面驱动装载以后运行的,(加入Windows有登录框,那么就是登录框以后)带窗口的程序放在这里就可以了。
服务和界面程序有相同之处,也有不同之处。
注册表run里面的程序是Windows界面驱动装载以后运行的,(加入Windows有登录框,那么就是登录框以后)带窗口的程序放在这里就可以了。
服务和界面程序有相同之处,也有不同之处。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以在注册表内操作呀!
进入注册表,HEKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN
在右边的界面新建一个“字符串值”名称为startrun,编辑该字符串值为你的程序名称(包括所在文件夹和文件名)
退出注册表
重启,ok!
进入注册表,HEKEY_CURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN
在右边的界面新建一个“字符串值”名称为startrun,编辑该字符串值为你的程序名称(包括所在文件夹和文件名)
退出注册表
重启,ok!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
delphi可以创建工程的时候就创建一个专用于服务的工程
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询