如题所示
谢谢大家
谢谢大家
解决方案 »
- ??? 诚心向大家请教------发展方向问题,请高手指点!!! 并附上个人从事程序之路过程。
- 关于VC文字显示的问题
- 请教一个关于WebServer服务器的问题:
- gdi+问题
- 奇怪现象:使用ClassWizard为新建的DIALOG资源添加类时出问题.
- 怎样把菜单“嫁”到工具条上?
- 如何得到SetProp()给一个程序设的标识(entry)??
- 如何在MFC中运用windowsAPI实现录音和播放功能
- 在VC6.0中加入了manifest文件后,为什么编译后的可执行程序图标上还是没有小盾牌呀?
- 一个基于GDI绘制的游戏界面,怎么用外部程序获取里面的文本?
- 如何创建VS中的目录选择对话框呀,谢谢!!!
- 请教各位大虾“LPCSTR与unsigned char *转换”,多谢
如strCMD="net start ..."
执行strCMD
给个例子你。BOOL CDOSDlg::ExecDosCmd()
{
#define EXECDOSCMD "ping www.163.com" //可以换成你的命令 SECURITY_ATTRIBUTES sa;
HANDLE hRead,hWrite; sa.nLength = sizeof(SECURITY_ATTRIBUTES);
sa.lpSecurityDescriptor = NULL;
sa.bInheritHandle = TRUE;
if (!CreatePipe(&hRead,&hWrite,&sa,0))
{
return FALSE;
} STARTUPINFO si;
PROCESS_INFORMATION pi;
si.cb = sizeof(STARTUPINFO);
GetStartupInfo(&si);
si.hStdError = hWrite;
si.hStdOutput = hWrite;
si.wShowWindow = SW_HIDE;
si.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES;
//关键步骤,CreateProcess函数参数意义请查阅MSDN
if (!CreateProcess(NULL, EXECDOSCMD
,NULL,NULL,TRUE,NULL,NULL,NULL,&si,&pi))
{
return FALSE;
}
CloseHandle(hWrite); char buffer[4096] = {0};
DWORD bytesRead;
while (true)
{
if (ReadFile(hRead,buffer,4095,&bytesRead,NULL) == NULL)
break;
//buffer中就是执行的结果,可以保存到文本,也可以直接输出
TRACE(buffer);
Sleep(200);
}
return TRUE;
}