Java 服务器上的命令行操作
Java command line action on server
我试图在用户电脑上打开 outlook,但因为 windows 服务器中的应用程序是 运行 服务器上的命令,而不是用户电脑中的命令。
这是代码:
ProcessBuilder pb = new ProcessBuilder();
pb.command("cmd.exe", "/C", "start", "outlook.exe",
"/eml", resultEmail.getCanonicalPath());
Process p = pb.start();
try {
p.waitFor();
} finally {
p.getErrorStream().close();
p.getInputStream().close();
p.getErrorStream().close();
p.destroy();
}
还有一件事,当我像这样创建 eml 文件时:
File resultEmail = File.createTempFile("test", ".eml");
它在服务器的临时目录而不是用户电脑上创建。
我可以用 java 对 运行 outlook 做些什么,并在用户 pc 而不是在服务器中打开 eml 文件?
考虑 jcraft.jsch。注意 Windows 需要 Ssh 客户端(如 Putty)。
一旦您能够 ChannelExec.connect 在远程计算机上,Outlook 将从那里获取 eml 文件
我试图在用户电脑上打开 outlook,但因为 windows 服务器中的应用程序是 运行 服务器上的命令,而不是用户电脑中的命令。
这是代码:
ProcessBuilder pb = new ProcessBuilder();
pb.command("cmd.exe", "/C", "start", "outlook.exe",
"/eml", resultEmail.getCanonicalPath());
Process p = pb.start();
try {
p.waitFor();
} finally {
p.getErrorStream().close();
p.getInputStream().close();
p.getErrorStream().close();
p.destroy();
}
还有一件事,当我像这样创建 eml 文件时:
File resultEmail = File.createTempFile("test", ".eml");
它在服务器的临时目录而不是用户电脑上创建。
我可以用 java 对 运行 outlook 做些什么,并在用户 pc 而不是在服务器中打开 eml 文件?
考虑 jcraft.jsch。注意 Windows 需要 Ssh 客户端(如 Putty)。
一旦您能够 ChannelExec.connect 在远程计算机上,Outlook 将从那里获取 eml 文件