gpt4 book ai didi

java - 如何从 Java 将多个参数传递到 .vbs 文件

转载 作者:行者123 更新时间:2023-12-01 09:29:18 24 4
gpt4 key购买 nike

我编写了一个VB脚本(myVB2.vbs),它基本上在Excel中运行宏并保存Excel。这是我的 VB 脚本(myVB2.vbs)

Dim objExcel, objWorkbook, filePath 

Set filePath = Wscript.Arguments(0)
Set objExcel = CreateObject("Excel.Application")
'Set objWorkbook = objExcel.Workbooks.Open("C:\Writter\Excel.xlsm")
Set objWorkbook = objExcel.Workbooks.Open(filePath)
objExcel.Visible = True
objExcel.Run "ChartUpdate"
objWorkbook.Save
objExcel.Quit

Set objWorkbook = Nothing
Set objExcel = Nothing

WScript.Quit

现在我需要通过将 excel 文件路径的参数传递给 VBscript 来从 Java 触发此 .vbs 文件。使用下面的 Java 代码,我无法传递文件路径的参数。我收到错误 - 没有文件扩展名“.xlsm”的脚本引擎

public static void main(String[] args) throws IOException {
String scriptpath = System.getProperty("user.dir") + "\\src\\com\\domain\\function\\resources\\myVB2.vbs";
String destinationlocation ="C:\\Writter\\Excel.xlsm" ;

Runtime rt = Runtime.getRuntime();
try {
Runtime.getRuntime().exec( "wscript"+ scriptpath+" "+destinationlocation);
}
catch( IOException e ) {
e.printStackTrace();
}

}

最佳答案

使用ProcessBuilder而不是.exec:

Process p = new ProcessBuilder("wscript", scriptpath, destinationlocation).start();

关于java - 如何从 Java 将多个参数传递到 .vbs 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39578933/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com