Java 使用Win32服务时线程中出现异常
我使用以下代码来调节远程机器中的服务:Java 使用Win32服务时线程中出现异常,java,jna,win32-process,Java,Jna,Win32 Process,我使用以下代码来调节远程机器中的服务: import com.sun.jna.platform.win32.W32Service; import com.sun.jna.platform.win32.W32ServiceManager; import com.sun.jna.platform.win32.Winsvc; public class CopyOfserviceRestart { public static void main(String[] args) { //publ
import com.sun.jna.platform.win32.W32Service;
import com.sun.jna.platform.win32.W32ServiceManager;
import com.sun.jna.platform.win32.Winsvc;
public class CopyOfserviceRestart {
public static void main(String[] args) {
//public void services()
{
W32ServiceManager serviceManager = new W32ServiceManager("TPATADTS5", null);
serviceManager.open(Winsvc.SC_MANAGER_ALL_ACCESS);
W32Service service = serviceManager.openService("Exponent Manager Service", Winsvc.SC_MANAGER_ALL_ACCESS);
if( service.queryStatus().dwCurrentState == Winsvc.SERVICE_RUNNING)
{
System.out.println("Chalche");
}
else
{
service.startService();
service.close();
System.out.println("Done");
}
}
}}
对于少数服务器,一切正常,但对于其他少数serevr,我遇到以下错误:
线程“main”com.sun.jna.platform.win32.win32异常:访问被拒绝。
位于com.sun.jna.platform.win32.W32ServiceManager.open(W32ServiceManager.java:47)
在com.accenture.service.copyofservicestart.main(copyofservicestart.java:15)上,这是一个小程序还是一个应用程序?我不完全确定,但我确实认为您需要为Java设置安全策略,以便与本机服务管理器一起工作。此外,它必须以足够高的运行级别运行,以执行所需的操作,如重新启动等。检查相关post@Ewald这是一个简单的Java程序,在这一部分没有任何复杂性,但ceratin服务器的访问被拒绝,是否有需要注册的windows密钥或其他可能有助于Java调用访问Windowws服务的内容?啊,您是否尝试过Sachin Bhansali建议的资源?我很想知道…@ewald使用了和Bhansali建议的一样的东西,事实上我使用了解决方案本身的代码,但同样的错误