C++ 编写一个WIN32程序,向CMD传递参数

[复制链接]
查看11 | 回复1 | 2010-6-7 20:04:41 | 显示全部楼层 |阅读模式
C++ 编写一个win32程序,向CMD传递参数
可以参考以下.net程序,希望能详细说明
p = new Process();
p.StartInfo.FileName = "cmd.exe ";
// 这里是关键点,不用Shell启动/重定向输入/重定向输出/不显示窗口
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = true;
p.Start();
p.StandardInput.WriteLine( "ping 127.0.0.1 ");// 向cmd.exe输入command
p.StandardInput.WriteLine( "exit ");
p.WaitForExit(60000);
string s = p.StandardOutput.ReadToEnd();// 得到cmd.exe的输出
p.Close();
下面的方法也可以参考
#include/*头文件包含*/
int main()
{

system("在这里写参数");
}
但每传递一个参数就要产生一个窗体。会产生很多窗体的,不好。然后,我想telnet一个机子,不知怎么传递密码,用户。。。。。

回复

使用道具 举报

千问 | 2010-6-7 20:04:41 | 显示全部楼层
首先传递多个参数可以用&,例如下面的命令使cmd.exe执行ping之后再执行dir命令:cmd /c ping 127.0.0.1>ping.txt & dir >dir.txt再次,启动cmd有很多种方法,system这就是其中一种还有WinExec函数,如:WinExec("cmd.exe /c dir>ping.txt", 0); 再有ShellExecute函数,如ShellExecute(NULL,"open","cmd.exe","/c dir>ping.txt",NULL, SW_HIDE ); 当然还有CreateProcess函数了。所有示例如下:#include #incl
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行