用户登录/注销时运行Java程序的批处理文件
我有一个Java应用程序打包成一个jar,我想在用户登录和注销Windows时运行它 我在批处理文件中添加了执行此操作的命令,并将其添加到组策略登录/注销中,并进行了一些日志记录,以便对其进行调试 当我以管理员用户身份运行登录的批处理文件时,它会正确执行,但是当我注销/登录时,它会跳过批处理文件中的java命令用户登录/注销时运行Java程序的批处理文件,java,windows,batch-file,group-policy,Java,Windows,Batch File,Group Policy,我有一个Java应用程序打包成一个jar,我想在用户登录和注销Windows时运行它 我在批处理文件中添加了执行此操作的命令,并将其添加到组策略登录/注销中,并进行了一些日志记录,以便对其进行调试 当我以管理员用户身份运行登录的批处理文件时,它会正确执行,但是当我注销/登录时,它会跳过批处理文件中的java命令 我猜这可能是因为运行java应用程序的本地系统存在权限问题,是否有其他方法可以解决这个问题?您可以尝试使用计划任务在启动时启动。您可以使用特定的用户,如果进程失败,您可能会收到更好的日志
我猜这可能是因为运行java应用程序的本地系统存在权限问题,是否有其他方法可以解决这个问题?您可以尝试使用计划任务在启动时启动。您可以使用特定的用户,如果进程失败,您可能会收到更好的日志。由于存在路径格式问题,并且我忘记将标准错误输出添加到日志记录中(“流末尾的2>&1”),我没有注意到错误
特别是在我的java.policy文件中,路径使用了“\”而不是“/” 路径上的java exe是否正确?exe记录了什么?批处理文件中的所有相关路径都正确解析?My Java app需要使用Java命令中指定的安全管理器以及Java.policy文件。当我记录它时触发它启动会出现一个安全异常——我猜这是因为java.policy文件没有正确加载。关于如何解决这个问题有什么想法吗?放弃上面的评论,这是一个路径问题。确定,因此它使用任务计划下触发的启动成功运行。你能在所有用户登录/注销时触发一个任务吗?谢谢你的帮助,我已经设法找出了哪里出了问题-看看我的答案。