用shellExecute()打开后关闭cmd窗口

时间:2014-04-09 14:11:43

标签: batch-file cmd sybase-asa

美好的一天。

我有一个Powerbuilder应用程序,它触发批处理文件来启动数据库服务器。 在批处理文件的内容下面:

"C:\Program Files\Sybase\SQL Anywhere 8\win32\dbsrv8.exe" -c 8m -n DEMO "C:\loadcon\db_demo\demo.db"

一切正常。 但是,我希望命令窗口在执行批处理脚本后自动关闭。我今天花了大部分时间阅读这个网站并尝试可能有用的选项,比如添加start,exit,/ exit,/ c但是没有正确的工作。使用前面的启动选项,数据库开关-c出现问题。使用批处理文件重新定位字符串引号会对数据库启动产生不良影响。然而,最后添加/退出 - 首先数据库承诺mssg'无法读取文件/退出'然后cmd提示关闭 - 所以,有些东西工作但不是100%。

任何人都可以启发我吗?

由于 亚历

1 个答案:

答案 0 :(得分:0)

您不能使用/ exit或/ c

来调用它

Batchfile.bat:

"C:\Program Files\Sybase\SQL Anywhere 8\win32\dbsrv8.exe" -c 8m -n DEMO "C:\loadcon\db_demo\demo.db"
EXIT 

必须是换行符

修改

可能是程序从未实际退出,因此永远不会到达" EXIT"命令。通常当使用Windows调度程序执行.bat文件或双击时,它将在程序完成并存在后立即打开和关闭命令提示符。

可能要考虑使用vbscript或cscript来执行命令。我无法记住我的批处理文件的vbs,但是:)

REEDIT 4月16日

回复:你的评论,试试这个?

cd C:\Program Files\Sybase\SQL Anywhere 8\win32
dbsrv8.exe -c 8m -y -q -n DEMO C:\loadcon\db_demo\demo.db
exit