Visual Basic 6 cmd.exe编译 - 弹出窗口

时间:2013-09-10 14:33:19

标签: java vb6 cmd

我正在编写编译各种VB6项目的java代码。我使用正确的命令创建cmd.exe Process Builder并执行它。我的问题是我编译的项目打开了需要手动关闭的窗口,与使用过的API +编译错误相关联。有没有办法让这些窗口不会弹出或者至少自动关闭它们,无论是通过java代码还是cmd提示符中的特殊VB6.EXE命令?

编辑:代码:

ProcessBuilder builder;
builder = new ProcessBuilder("cmd.exe", "/c",
          "cd \"C:\\Program Files\\Microsoft Visual Studio\\VB98\" && VB6.EXE /m "
          + project.getPathToProject() + " /outdir " + outputPath + " && exit");
File outputDir = new File(outputPath);
if (!outputDir.exists()) {
    outputDir.mkdirs();
}
builder.redirectErrorStream(true);
Process p = builder.start();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while (true) {
    line = r.readLine();
    if (line == null) {
        break;
    }
    System.out.println(line);
}

p.waitFor();
int exit = p.exitValue();

UPDATE: / out命令有助于处理错误窗口,但我仍然在编译过程中得到了关于'窗口'的ComponentOne(我假设的项目中使用的API)。

1 个答案:

答案 0 :(得分:3)

如果打开命令提示符并导航到该文件夹​​,然后运行“VB6 /?”,您将看到一个弹出窗口,显示您可以使用的命令行参数。

你感兴趣的是/ out参数。根据文件:

  

/ out filename - 指定在构建时接收错误的文件   使用/ m或/ runexit。如果不使用/ out,则命令行构建   错误显示在消息框中。