tomcat自动启动时无法调用交互式程序的问题

 

    tomcat如果以系统服务自动启动,运行其上的页面等无误,但需要调用一些service程序或者交互式程序时则不行。即使点选了“allow service to interact with desktop”,VS与Win7共舞:系统服务的Session0隔离

在使用时会出现VS与Win7共舞:系统服务的Session0隔离这样另外一个桌面。

 

    观察到启动tomcat6w.exe和启动tomcat6.exe,这两者有不同效果。启动tomcat6w无法调用程序。

    因此我的思路是写一个简单的bat程序来启动tomcat6.exe,但是bat会出现CMD窗口,还是令客户不满意。因此在网上搜到一个启动bat但不出现CMD窗口的方法。http://qdx5204.blog.163.com/blog/static/3932722201072925740104/

 

 

1)编辑一个vbs脚本,在其中以隐藏窗口运行批处理程序。

------------------------------------------------------------

Set ws = CreateObject("Wscript.Shell")

ws.run "cmd /c launchtomcat.bat",vbhide

------------------------------------------------------------

将水平线中代码拷贝到记事本中,保存为"runbat.vbs"或者其它的名字(扩展名必须是.vbs),然后点击运行生成的脚本runbat.vbs,即可隐藏运行指定的批处理程序。

 

 

2)把这个脚本放到%TOMCAT%/bin目录下,然后在该目录下创建另一个launchtomcat.bat的文件。文件内容很简单:

 

start /B tomcat6

 

 

这些工作做完后,双击runbat.vbs可以看到tomcat在后台启动了,用户名是administrator,调用程序也没有问题了。

 

 

3)确认无误后,创建runbat.vbs的快捷方式,拖到“开始”里面的startup下。tomcat6.exe就可以开机自动启动了。

 

需要注意的是:

1)代码中在调用程序时,我使用的是exec方法,那么其参数里面就不能再带有“cmd”或“start”等

2)服务中可以将tomcat的属性的登录账户改为administrator,也许是个简便方法,可以解决其他情景下的问题。只不过在我这种情况下并没有适用----调出来的程序只显示在后台.....

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值