我正在使用MSG命令[NETSEND不再可用]从Win 7/2008服务器(32/64位)向Win 7/2008服务器(32/64位)发送消息,我的java应用程序是32位由于某些要求(使用java 7 update 25),不能使用64位。 当我在下面运行我的java应用程序时是场景
32位Win 7/2008服务器到64位Win 7/2008 - 正常工作
4。 64位Win 7/2008服务器到64位Win 7/2008 - 不工作
5。 64位Win 7/2008服务器到32位Win 7/2008 - 不工作
是否有任何解决方法可以在64位Win 7/2008服务器中运行?
package msgcommand;
import java.io.*;
public class TestExec {
public static void main(String[] args) {
try {
Process p = Runtime.getRuntime().exec("cmd /C MSG.exe /SERVER:127.0.0.1 * test");
BufferedReader in = new BufferedReader(
new InputStreamReader(p.getInputStream()));
String line = null;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
答案 0 :(得分:0)
问题的原因是,在64位系统上,32位应用程序无法访问windows \ system32文件夹。你会redi
要获得msg.exe的32位版本,可以使用特殊文件夹%WinDir%\ Sysnative 来执行msg.exe
详情请见:
http://msdn.microsoft.com/en-us/library/windows/desktop/aa384187%28v=vs.85%29.aspx http://support.microsoft.com/kb/942589/en-us