delphi 控制服务程序,让服务启动失败后总是恢复。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi 控制服务程序,让服务启动失败后总是恢复。相关的知识,希望对你有一定的参考价值。

BOOL WINAPI LetServiceAlwaysReboot(LPCTSTR ServiceName)
SC_HANDLE hSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_CONNECT);
if (hSCManager != NULL)
SC_HANDLE hService = OpenService(hSCManager, ServiceName, SC_MANAGER_ALL_ACCESS);//值得一提的是需要用SC_MANAGER_ALL_ACCESS
if (hService != NULL)
SERVICE_FAILURE_ACTIONS failact = 0 ;
SC_ACTION act[3];
act[0].Delay = act[1].Delay = act[2].Delay = 0;
act[0].Type = act[1].Type = act[2].Type = SC_ACTION_RESTART;
failact.cActions = 3;
failact.lpsaActions = act;
failact.dwResetPeriod = 0;
if (ChangeServiceConfig2(hService, SERVICE_CONFIG_FAILURE_ACTIONS, &failact))
CloseServiceHandle(hService);
CloseServiceHandle(hSCManager);
return TRUE;

CloseServiceHandle(hService);
CloseServiceHandle(hSCManager);
return FALSE;

CloseServiceHandle(hSCManager);
return FALSE;

else return FALSE;

这段代码 有没有高手 可以转成DELPHI 可以实别的啊。。小弟初来乍到。。。 就是修改指定的服务程序的属性让它出错可以再重启

参考技术A Bars bar = new Bars();
bar.setId(rs.getLong("id"));
bar.setName(rs.getString("name"));
bar.setType(rs.getInt("type"));
bar.setCreatorId(rs.getLong("creator_id"));
resultList.add(bar);
if (currentNum == skipEnd - 1)
break;
参考技术B ? 守望幸福 ( 2005) ? 警中警 ( 2007) ? 苦菜花 ( 2004)

mssqlserver服务启动后又停止了?

从服务里面启动Sqlserver服务。弹出窗口的错误信息是:"本地计算机上的MSSQLSERVER服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的,例如“性能日志和警报“服务"。

解决方法:调整系统时间到前一天,就可以启动SQLserver服务了,然后再把时间调回来

请问这是什么原理? 为什么把系统时间调前一天就可以了?
操作系统:WINDOWS2003企业版
SQL Server 2000

因为评估版本过期了,改一下系统时间,可以欺骗程序,让程序误以为还在有效期内


什么是ms SQL

ms SQL是指微软的SQLServer数据库服务器,它是一个数据库平台,提供数据库的从服务器到终端的完整的解决方案,其中数据库服务器部分,是一个数据库管理系统,用于建立、使用和维护数据库。

SQL Server一开始并不是微软自己研发的产品,而是当时为了要和IBM竞争时,与Sybase合作所产生的,其最早的发展者是Sybase。

同时微软也和Sybase合作过
SQL Server 4.2版本的研发,微软亦将SQL Server 4.2移植到Windows
NT,在与Sybase终止合作关系后,自力开发出SQL Server 6.0版,往后的SQL Server即均由微软自行研发。

SQL Server 的最新版本 2012 版新增了这样一些特性

借助 AlwaysOn
群集和可用性组实现的高可用性及灾难恢复解决方案、使查询速度飞速提升的 xVelocity 内存中存储、借助 Analysis Services
中的 Power View 和表格建模实现的快速数据浏览和可缩放业务智能,以及 Data Quality Services
带来的全新数据管理能力。


参考资料来源:百度百科-ms SQL

参考技术A 本地计算机上的MSSQLSERVER服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的
笔者ASP运行环境:操作系统为Windows XP SP2,IIS的版本为默认的5.1,数据库为SQL Server 2005(MDAC版本为2.8)

一、出现“本地计算机上的MSSQLSERVER服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的”

1.开始-->管理管理工具-->服务

2.启动SQL Server(MSSQLSERVER )

二、解决“本地计算机上的MSSQLSERVER服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的”

1.打开SQL Server 2005中的配置工具SQL Server Configure Manager,将VIA协议禁用

2.重新启动SQL Server(MSSQLSERVER ),成功

“本地计算机上的MSSQLSERVER服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的”解决!

补充一点,可能是评估版本过期,改下系统时间~

3.出现“本地计算机上的MSSQLSERVER服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的”本回答被提问者采纳
参考技术B 改密码对服务启动肯定没有关系
1、你检查你数据库有异常没有,到企业管理器上查看。
2、检查一下服务器上的其他应用,有没有操作数据库的,如果有尽量将其他应用关掉
3、你这电脑是否重新启动过,你需要将服务管理器的“当启动os时自动启动服务”的功能打开。
按照你说提示信息应该不是sqlserver报的错,应该是应用报的错。你检查一下你的应用具体启动了sql的什么服务,或者你先操作上面第3条后看还有问题没。
参考技术C http://blog.sina.com.cn/s/blog_541dc5670100atzr.html

参考资料:http://blog.sina.com.cn/s/blog_541dc567010096oo.html

参考技术D 这个非常有效

以上是关于delphi 控制服务程序,让服务启动失败后总是恢复。的主要内容,如果未能解决你的问题,请参考以下文章

delphi 高手进,系统服务编程

vmware上的Delphi7和XP测试程序,连接socket失败

数据库未启动或连接失败是怎么回事,如何去核实?

HttpWebRequest 在第一次失败后总是失败

Delphi的几个难题?

mssqlserver服务启动后又停止了?