C语言调用CMD名后如何获取执行结果
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言调用CMD名后如何获取执行结果相关的知识,希望对你有一定的参考价值。
例如,判断一个CMD是否运行,可以用命令tasklist /fi imagename eq cmd.exe,那么我用C语言编写的时候,如何获取这段命令执行后的结果。。。
可以这样:-----------------------------------
代码1(适合一条一条执行的)
运行 ("cmd /c 代码", 假, )
例如:运行 ("cmd /c echo ooo", 假, )
------------------------------------
代码2(适合多条代码,会写到一个文件。)
写到文件 ("文件目录+名称带扩展名", 到字节集("第一行"+"第二行"+"第三行"))
运行运行 ("刚才输入的 文件目录+名称", 假, )
例如:
写到文件 ("C:\123.bat", 到字节集("@echo off"+"pause"))
运行运行 ("C:\123.bat", 假, ) 参考技术A 就是在命令行输入后直接显示出来了啊,可能是一闪而过,你在程序后加个getchar() ; 参考技术B 直接调用了cmd.exe了? 那你要替换输出管道才能获取输出结果.具体要用到几个windows sdk函数.详细可以去查阅msdn,有详细的说明和例子
bcb中,怎么用数组获取SQL语句执行的结果?
用的是ADO控件。
执行一条select语句得到的结果又很多个字段,我只要其中两个字段,A和B,并且我要逐条读取,把结果都存在数组或者链表里面,怎么搞?
bcb 就是c++ builder,
我用的是c++!
AnsiString arr[200][2];
int i=0;
mysql="select A,B from 表名 where 条件";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(mysql);
ADOQuery1->Open();
while(!ADOQuery->Eof)
Arr[i][0]=ADOQuery1->FieldByName("A")->AsString;
Arr[i][1]=ADOQuery1->FieldByName("B")->AsString;
i++;
参考技术A '你说的是VB?
dim a() as string
dim i as interge
Dim Hzrs As New ADODB.Recordset
Dim cnn As New ADODB.Connection
Dim sql As string
cnn.Open "Provider=MSDAORA.1;Password=dzcs;User ID=dzcs;Data Source=ORCL_72.11"
Sql = "select a,b from TDzSelinfo"
Hzrs.Open Sql, cnn, adOpenStatic, adLockOptimistic
if Hzrs.RecordCount>0 then redim a(Hzrs.RecordCount,1)
i=0
while not Hzrs.EOF
a(i,0)=Hzrs!A
a(i,1)=Hzrs!B
wend追问
是C++ ,不是VB
以上是关于C语言调用CMD名后如何获取执行结果的主要内容,如果未能解决你的问题,请参考以下文章
cmd调用gcc编译运行c语言后,c语言会再产生一个窗口显示结果,如何将这些内容显示在cmd命令窗口中?