Windows 10 ProcessBuilder.start()赢了';Don’不要马上开始这个过程

Windows 10 ProcessBuilder.start()赢了';Don’不要马上开始这个过程,windows-10,processbuilder,windows-update,Windows 10,Processbuilder,Windows Update,我编写了一个调用音频播放器(VLC)来播放java程序准备的播放列表的过程。到目前为止,这一切都很顺利。但最近(不知道从何时起)它改变了它的行为。VLC只有在我关闭程序或从程序(从那里开始)切换到另一个屏幕时才会启动。完全关闭程序将随时启动VLC,切换到不同的屏幕并不总是奏效。 我的怀疑是,这可能与Windows10的最新更新有关。有没有人经历过同样的经历,并对如何克服这个问题提出了一些好的建议 private void callAudioPlayer() { String t

我编写了一个调用音频播放器(VLC)来播放java程序准备的播放列表的过程。到目前为止,这一切都很顺利。但最近(不知道从何时起)它改变了它的行为。VLC只有在我关闭程序或从程序(从那里开始)切换到另一个屏幕时才会启动。完全关闭程序将随时启动VLC,切换到不同的屏幕并不总是奏效。 我的怀疑是,这可能与Windows10的最新更新有关。有没有人经历过同样的经历,并对如何克服这个问题提出了一些好的建议

private void callAudioPlayer() {
    
    String tmpPath = System.getProperty("java.io.tmpdir") + "temp.m3u";
    BufferedWriter br;
    try {
        br = new BufferedWriter(new FileWriter(new File(tmpPath)));
        for (int i = 0; i < tablePL.getItemCount(); i++) {
            String str = filePath + tablePL.getItem(i).getText(1);
            if (windows) {
                if (str.startsWith("file:")) str = str.substring(5);
                str = str.replace("/", "\\");
            }
            br.write(str);
            br.newLine();
        }
        br.close();
        ProcessBuilder pb = new ProcessBuilder(txtPlayerDir.getText(), tmpPath);
        pb.start();
    } catch (IOException e) {
        logger.severe("Error in callAudioPlayer()");
        logger.log(Level.SEVERE, e.getMessage(), e);
    }
        
    return;
}
private void callAudioPlayer(){
字符串tmpPath=System.getProperty(“java.io.tmpdir”)+“temp.m3u”;
缓冲写入程序br;
试一试{
br=新缓冲写入程序(新文件写入程序(新文件(tmpPath));
对于(int i=0;i