在Java等待一个Windows服务启动停止?【JAVA教程】

!
也想出现在这里? 联系我们
信息

在Java等待一个Windows服务启动停止?,第1张

概述在Java等待一个Windows服务启动/停止

我正在寻找一种方法来持续检查windows服务的状态,直到它完全停止或开始。

我使用Malik Ehtasham代码在这里获得服务的状态。 但我必须不断按下button才能获得状态。 我想只是继续检查状态说…请等待,然后说弯腰或开始。

这就是我必须开始的服务:

String[] StartSpooler = {\”cmd.exe\”,\”/c\”,\”sc\”,\”start\”,\”spooler\”}; try { Process process = new ProcessBuilder(StartSpooler).start(); inputStream inputStream = process.getinputStream(); inputStreamReader inputStreamReader = new inputStreamReader(inputStream); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); String StartSpoolerline; while ((StartSpoolerline= bufferedReader.readline()) != null) { System.out.println(StartSpoolerline); } } catch (Exception ex) { System.out.println(\”Exception : \” + ex); }

这是我必须保持检查服务状态,但它不工作

从windows服务启动一个进程作为pipe理员

为什么我在打印语句时出现IOError:(9,\’Bad file descriptor\’)错误?

在安装时从app.config设置中设置.NET windows服务的angular色

Python程序作为windows服务

执行从windows服务捕获截图的程序

try { Process p = Runtime.getRuntime().exec(\”sc query spooler\”); BufferedReader reader = new BufferedReader(new inputStreamReader(p.getinputStream())); String line = reader.readline(); while (line != null) { if (line.trim().startsWith(\”STATE\”)) { while (!\”4\”.equals(line.trim().substring(line.trim().indexOf(\”:\”) + 1,line.trim().indexOf(\”:\”) + 4).trim())) { System.out.println(\”Starting….\”); } System.out.println(\”Service is started and running\”); } line = reader.readline(); } } catch (IOException e1) { }

请帮忙,谢谢!

我怎样才能在后台运行我的Python脚本?

C#dynamic文件系统观察器服务

节点窗口运行child process.exe

windows服务无法访问映射的networking驱动器

阻止在Redhat 7中停止审计服务

我已经使用你的代码,这是在我的窗口机器上..请再试一次。

import java.io.BufferedReader; import java.io.IOException; import java.io.inputStreamReader; public class windowserviceTest { public static voID main(String[] args) { try { Process p = Runtime.getRuntime().exec(\”sc query spooler\”); BufferedReader reader = new BufferedReader(new inputStreamReader(p.getinputStream())); String line = reader.readline(); while (line != null) { if (line.trim().startsWith(\”STATE\”)) { while (!\”4\”.equals(line.trim().substring(line.trim().indexOf(\”:\”) + 1,line.trim().indexOf(\”:\”) + 4).trim())) { System.out.println(\”Starting….\”); } System.out.println(\”… Service is started and running\”); } line = reader.readline(); System.out.println(\”SERVICE DETAILS –> \”+ line); } } catch (IOException e1) { } } } OUTPUT =========== SERVICE DETAILS –> SERVICE_name: spooler SERVICE DETAILS –> TYPE : 110 WIN32_OWN_PROCESS (interactive) SERVICE DETAILS –> STATE : 4 RUNNING … Service is started and running SERVICE DETAILS –> (StopPABLE,NOT_PAUSABLE,ACCEPTS_SHUTDOWN) SERVICE DETAILS –> WIN32_EXIT_CODE : 0 (0x0) SERVICE DETAILS –> SERVICE_EXIT_CODE : 0 (0x0) SERVICE DETAILS –> CHECKPOINT : 0x0 SERVICE DETAILS –> WAIT_HINT : 0x0 SERVICE DETAILS –> null

这对我很好。

private static String[] scriptStart = { \”net\”,SERVICE_name}; private static String[] scriptStop = {\”net\”,\”stop\”,SERVICE_name}; Runtime runtime = Runtime.getRuntime(); Process process = runtime.exec(scriptStart);//or scriptStop process.waitFor();

总结

以上是内存溢出为你收集整理的在Java等待一个Windows服务启动/停止?全部内容,希望文章能够帮你解决在Java等待一个Windows服务启动/停止?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

© 版权声明
THE END
喜欢就支持一下吧
点赞103 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容