如何远程检测SQL 2000数据库服务是否开启用程序SC_HANDLE SC_Hand;
SC_HANDLE Service_Hand;
SERVICE_STATUS status ;
//"192.168.0.119 NULL:"SERVICES_ACTIVE_DATABASE
SC_Hand=OpenSCManager("192.168.0.119",SERVICES_ACTIVE_DATABASE,SC_MANAGER_ALL_ACCESS);
if (NULL == SC_Hand)
{
MessageBox("Open SC_Hand failed \n");
}
Service_Hand=OpenService(SC_Hand, "MSSQLSERVER", SERVICE_ALL_ACCESS);
QueryServiceStatus(Service_Hand, &status);
if(status.dwCurrentState==SERVICE_RUNNING)
{
MessageBox("服务已经启动 ");
}
if(status.dwCurrentState == SERVICE_STOPPED)
{
MessageBox("服务已经没有启动 ");
}
if(status.dwCurrentState == SERVICE_PAUSED)
{
MessageBox("服务已经暂停 ");
}这个代码可以在本机远行,但远程就不行了,请问有没有可以远程检测的其它方法呀,谢谢大家!
SC_HANDLE Service_Hand;
SERVICE_STATUS status ;
//"192.168.0.119 NULL:"SERVICES_ACTIVE_DATABASE
SC_Hand=OpenSCManager("192.168.0.119",SERVICES_ACTIVE_DATABASE,SC_MANAGER_ALL_ACCESS);
if (NULL == SC_Hand)
{
MessageBox("Open SC_Hand failed \n");
}
Service_Hand=OpenService(SC_Hand, "MSSQLSERVER", SERVICE_ALL_ACCESS);
QueryServiceStatus(Service_Hand, &status);
if(status.dwCurrentState==SERVICE_RUNNING)
{
MessageBox("服务已经启动 ");
}
if(status.dwCurrentState == SERVICE_STOPPED)
{
MessageBox("服务已经没有启动 ");
}
if(status.dwCurrentState == SERVICE_PAUSED)
{
MessageBox("服务已经暂停 ");
}这个代码可以在本机远行,但远程就不行了,请问有没有可以远程检测的其它方法呀,谢谢大家!
Set objWMIService = GetObject("winmgmts:\\" & strComputer)
Set colServices = objWMIService.InstancesOf("Win32_Service") objService.State //service是否启动