delphi控制控制台程序的问题(200分)

  • 主题发起人 主题发起人 chinawjy
  • 开始时间 开始时间
C

chinawjy

Unregistered / Unconfirmed
GUEST, unregistred user!
简单的控制台程序 console.exe
#include "string.h"
main(int argc, char* argv[])
{
char buf[1024];
printf("login:>");
while(1){
scanf("%s", buf),
printf("%s/r/nlogin:>", buf);
if (strcmp(buf, "quit")==0) break;
}
}
我用delphi的win32程序接管他的控制台输入输出(启动这个进程,把它隐藏,使用pipe io重定向)。为什么只有当向它写"quit"#A时才能从pipe里读出它print在屏幕上的所有东东,而在此之前向他发送别的字符串,win32程序没反映?
按理说读管道操作 在管道被写的时候应该有返回,但是这个很奇怪。
如果我把cmd.exe作为被控制的对象就可以拿到他的输出。
 
学习...比较新鲜
 
你那上面怎么是c++代码?
 
有谁知道怎么检测应用程序有没有响应啊,知道的高手请指点一下我.QQ38829979
 
有谁知道怎么检测应用程序有没有响应啊,知道的高手请指点一下我.QQ38829979
 
问题已经解决了。
有知道的可以继续回复,我先留一段时间。有200分呢。
 
先说一下解决的方法。
就是printf屏幕之后,flush一下就好了。
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
821
import
I
后退
顶部