调用使用调用Runtime.getRuntime基于窗口的.NET应用程序()。从Spring控制器Tomcat上运行exec的

StackOverflow https://stackoverflow.com/questions/1228143

我打电话称为经由弹簧控制器MyApp.exe的exe文件;这里是在控制器中的代码: 调用Runtime.getRuntime()EXEC( “d:\ VMD \应用\ MyApp.exe的”);

MyApp.exe的是C#的.NET应用程序。如果我直接点击使用Windows资源管理器程序myapp.exe,应用程序打开并运行;但是,如果通过我在Tomcat Spring的控制器调用命令,应用程序不打开;但是,当我打开任务管理器,我可以看到Myapp.exe进程正在运行。然而,对于MyApp.exe将窗户开不起来。在JBoss中,应用程序成功通过Spring控制器调用。有谁知道为什么.NET应用程序不通过的Tomcat打开?

的Tomcat安装为一个服务。当启动Tomcat使用的startup.bat文件手动,然后从Tomcat Web应用程序中的链接,启动MyApp.exe的成功调用程序myapp.exe。不过,我不知道用是否被Tomcat的启动作为服务阻止程序myapp.exe从正常运行,因为当JBoss的开始作为一种服务,MyApp.exe的成功推出。

有帮助吗?

解决方案

在Windows中,作为服务运行不能访问常规用户桌面的方法。而且,由于由服务启动的程序继承了这个属性,它通常是不允许进入桌面无论是。

当你状态,即Tomcat的运行为服务,我认为这是问题的原因。现在不能找到该权限的合适的参考,对不起。

为什么没有你的.NET应用程序会自动在用户会话开始?你可以通过插座连接到Tomcat,等待着某种启动信号的到达,则可能会触发该映射应用程序的主窗口。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top