windows server 2003与windows server 2008上的Java运行批处理文件问题

windows server 2003与windows server 2008上的Java运行批处理文件问题,java,batch-file,Java,Batch File,我使用java的“runtime.exec”执行一个批处理文件,该批处理文件是通过java本身创建的。 我的查询是在运行时创建的,批处理文件在我的计算机(XP)和windows server 2008 R2上运行良好。 但在WindowsServer2003上,批处理文件会出现峰值,但不会执行。但是如果我双击它执行的批处理文件 Process process = runtime.exec("cmd /c start /b "+batchFile.getPath()); 这可能是因为(缺少)在w

我使用java的“runtime.exec”执行一个批处理文件,该批处理文件是通过java本身创建的。 我的查询是在运行时创建的,批处理文件在我的计算机(XP)和windows server 2008 R2上运行良好。 但在WindowsServer2003上,批处理文件会出现峰值,但不会执行。但是如果我双击它执行的批处理文件

Process process = runtime.exec("cmd /c start /b "+batchFile.getPath());
这可能是因为(缺少)在windows server 2003上从
cmd.exe
运行批处理所需的管理员权限

方法1 为批处理作业运行所用的用户帐户授予
cmd.exe
程序读取和执行权限。要执行此操作,请执行以下步骤:

  • 单击开始,然后单击Windows资源管理器
  • 找到
    cmd.exe文件,然后右键单击该文件。Cmd.exe文件位于
    %windir%\System32
    文件夹中
  • 单击属性
  • 单击安全选项卡
  • 单击添加
  • 在“输入要选择的对象名称”框中,键入运行批处理作业的用户名,然后单击“确定”两次
  • 注意添加用户时,会自动授予用户读取和执行权限。 7.当系统提示您继续时,单击“是”

    方法2 向批处理组授予
    cmd.exe
    文件的读取和执行权限。这允许所有批处理运行命令处理器。要执行此操作,请执行以下步骤:

  • 单击开始,然后单击Windows资源管理器
  • 找到
    cmd.exe文件,然后右键单击该文件。
    cmd.exe
    文件位于
    %windir%\System32
    文件夹中
  • 单击属性
  • 单击安全选项卡
  • 单击添加
  • 在“输入要选择的对象名称”框中,键入“批处理”,然后单击“确定”两次
  • 当系统提示您继续时,单击“是”
  • 有关详细信息,请参阅以下Microsoft知识库文章: