注册 登录
编程论坛 VC++/MFC

在 VS 上调用 MinGW,使 CMD 始终在后台运行,可以通过给不同命令使 CMD 获得命令行,运行结果显示到界面中。。

cr945211 发布于 2014-07-31 17:34, 1025 次点击
看到有相似的帖子,但是只能完成调用CMD(如果安装了MinGW就可以用了),运行一次结果显示在界面中,但是有些命令是上下关联的,有些人是通过弹出了CMD窗口上解决,有的干脆解决不了,只能运行简单的命令。。所以,能不能使CMD一直在后台运行,前面你给个命令,就相当于在CMD上输入了命令行,然后会把结果传到界面中?
   如果这个想法可行,请问都涉及到哪方面的问题了?有没有示例代码更好的解释说明下?
9 回复
#2
cr9452112014-08-01 10:29
没有人会吗?还是我的问题表述不清楚??
#3
zklhp2014-08-01 10:34
以下是引用cr945211在2014-8-1 10:29:51的发言:

没有人会吗?还是我的问题表述不清楚??

我用MinGW 但不明白你到底想干什么?

是不是在Windows下和调用命令行程序?
#4
zklhp2014-08-01 10:38
如果是这样的话 和是不是用MinGW没关系 需要用CreatePipe()和CreateProcess()来和命令行程序通讯 网上有这样的代码
#5
wp2319572014-08-01 10:40
貌似他想写窗口程序  消息循环???
#6
cr9452112014-08-01 20:20
以下是引用zklhp在2014-8-1 10:38:09的发言:

如果是这样的话 和是不是用MinGW没关系 需要用CreatePipe()和CreateProcess()来和命令行程序通讯 网上有这样的代码

  应该是没关系,只要调用CMD就可以,我现在可以输入命令行,然后把结果输到界面中了,但是如果需要连续的那种命令就不行了,比方说,运行一个加法程序(MinGW可以编译),会提示输入要相加的数,就没有办法给CMD了。。所以,如果调用的CMD一直在后台运行就可以了吧,可以在运行程序后接收我给的值,然后得到结果。。。
    我现在主要是不知道怎么让CMD一直在后台运行。。或者说我的这个想法可以吗?应该怎样解决我的问题

[ 本帖最后由 cr945211 于 2014-8-1 20:27 编辑 ]
#7
cr9452112014-08-01 20:21
以下是引用wp231957在2014-8-1 10:40:02的发言:

貌似他想写窗口程序  消息循环???

   是想调用CMD并使它始终在后台运行可以持续接收命令
#8
cr9452112014-08-01 20:24
以下是引用zklhp在2014-8-1 10:34:55的发言:


我用MinGW 但不明白你到底想干什么?

是不是在Windows下和调用命令行程序?

   是想在VS下做个界面,可以编译程序,因为调用的是MinGW所以。。在调用CMD后就可以了,像编译、运行,这些只需一个命令就可以,我现在可以实现,但是如果想调试,必须在gdb下,但是我现在没办法在gdb下把命令给CMD,只能运行CMD本身识别的命令行。。
#9
cr9452112014-08-01 20:34
补充下,我最后当然不能以命令行形式呈现,需要以按键响应命令行,然后再通讯到CMD中。。所以要求CMD是在后台操作,也可以打开来看,表面上看来就是个编译器啦
#10
cr9452112014-08-02 16:19
大家对我的问题有什么不清楚的地方吗??望指正
1