用它们可以调用EXE文件,但我的是一个tomcat的启动和关闭文件(startup.bat和shutdown.bat),我得用我这个程序来控制tomcat的启动和关闭,但怎么调用都不成功,只是黑屏(cmd状态下)一闪,正常的应该是黑屏下显示正在启动,然后启动成功,就停在这个状态下了。
请问哪位大侠知道这是什么原因?怎么处理?
6 个解决方案
#1
我试过用ShellExecute和winexec来调用,但都不成功
====================================
可以的。我想是你的.bat有问题吧
====================================
可以的。我想是你的.bat有问题吧
#2
不是BAT有问题,我在“开始”-“运行”里可以直接运行,很正常。
我说的不成功是程序调用BAT后黑色屏一闪而过,并没有启动或关闭Tomcat.
我说的不成功是程序调用BAT后黑色屏一闪而过,并没有启动或关闭Tomcat.
#3
很简单!
Win2k/XP下的
WinExec(PCHar('cmd.exe/c a.bat'), SW_Show)
http://lysoft.7u7.net
Win2k/XP下的
WinExec(PCHar('cmd.exe/c a.bat'), SW_Show)
http://lysoft.7u7.net
#4
用ShellExecute函数时不要忘记在uses里加上ShellAPI文件
#5
小李飞刀,谢谢提醒,但这点我还是做了,我调用别的程序是成功的。
我认真查了一下,调用一个简单的BAT可以,但调用Tomcat的启动文件就不行,好象是说环境变量不对。但奇怪我为什么在“开始”-“运行”里就没有任何问题,而在delphi里调用就会环境变量没设呢?哪位大侠知道在delphi调用的BAT环境跟在cmd下有什么不同吗?
我认真查了一下,调用一个简单的BAT可以,但调用Tomcat的启动文件就不行,好象是说环境变量不对。但奇怪我为什么在“开始”-“运行”里就没有任何问题,而在delphi里调用就会环境变量没设呢?哪位大侠知道在delphi调用的BAT环境跟在cmd下有什么不同吗?
#6
ShellExecute(Handle, 'open', PChar('c:\test\app.exe'), nil,这里加入环境变量就可以啦, SW_SHOW);
#1
我试过用ShellExecute和winexec来调用,但都不成功
====================================
可以的。我想是你的.bat有问题吧
====================================
可以的。我想是你的.bat有问题吧
#2
不是BAT有问题,我在“开始”-“运行”里可以直接运行,很正常。
我说的不成功是程序调用BAT后黑色屏一闪而过,并没有启动或关闭Tomcat.
我说的不成功是程序调用BAT后黑色屏一闪而过,并没有启动或关闭Tomcat.
#3
很简单!
Win2k/XP下的
WinExec(PCHar('cmd.exe/c a.bat'), SW_Show)
http://lysoft.7u7.net
Win2k/XP下的
WinExec(PCHar('cmd.exe/c a.bat'), SW_Show)
http://lysoft.7u7.net
#4
用ShellExecute函数时不要忘记在uses里加上ShellAPI文件
#5
小李飞刀,谢谢提醒,但这点我还是做了,我调用别的程序是成功的。
我认真查了一下,调用一个简单的BAT可以,但调用Tomcat的启动文件就不行,好象是说环境变量不对。但奇怪我为什么在“开始”-“运行”里就没有任何问题,而在delphi里调用就会环境变量没设呢?哪位大侠知道在delphi调用的BAT环境跟在cmd下有什么不同吗?
我认真查了一下,调用一个简单的BAT可以,但调用Tomcat的启动文件就不行,好象是说环境变量不对。但奇怪我为什么在“开始”-“运行”里就没有任何问题,而在delphi里调用就会环境变量没设呢?哪位大侠知道在delphi调用的BAT环境跟在cmd下有什么不同吗?
#6
ShellExecute(Handle, 'open', PChar('c:\test\app.exe'), nil,这里加入环境变量就可以啦, SW_SHOW);