你好我使用autoitx4java.Below在我的Java程序中使用的AutoIt是我使用的代碼:無法啓動CMD或Java中使用
import java.io.File;
import autoitx4java.AutoItX;
import com.jacob.com.LibraryLoader;
public class MyTest {
public static void main(String[] args) throws InterruptedException{
// TODO Auto-generated method stub
String jacobDllVersionToUse;
if (jvmBitVersion().contains("32")){
jacobDllVersionToUse = "jacob-1.18-x86.dll";
}
else {
jacobDllVersionToUse = "jacob-1.18-x64.dll";
}
File file = new File("lib", jacobDllVersionToUse);
System.setProperty(LibraryLoader.JACOB_DLL_PATH, file.getAbsolutePath());
AutoItX x = new AutoItX();
// System.out.println(file.getAbsolutePath());
x.run("cmd.exe");
}
private static String jvmBitVersion() {
// TODO Auto-generated method stub
System.out.println(System.getProperty("sun.arch.data.model"));
return System.getProperty("sun.arch.data.model");
}
}
當我運行這個程序,什麼都不會發生,並有也沒有錯誤。這也發生,如果我替換cmd.exe notepad.exe。 但是,當我用calc.exe計算器啓動替換cmd.exe。
我是新來的AutoIt和使用下面的鏈接設置的AutoIt與Java:
也許你應該檢查的是操作系統體系結構,而不是JVM體系結構。畢竟,您可以在64位操作系統上運行32位JVM。強制你的代碼使用64位DLL,如果這不起作用,那麼強制32位DLL,如果這不起作用,然後嘗試提供一個明確的路徑cmd.exe,看看是否有所作爲。 – DevilsHnd