关于在VC中调用其它EXE

调用记事本。网页

WinExec("Notepad.exe", SW_SHOW);  // 打开记事本
WinExec("D:\\Program Files\\Test\\Test.exe",SW_SHOWMAXIMIZED); // 以最大化的方式打开Test.exe

 

ShellExecute(NULL,"open","C:\\Test.txt",NULL,NULL,SW_SHOWNORMAL); // 打开C:\Test.txt 文件
ShellExecute(NULL, "open", "iexplore.exe","http://www.google.com",/  NULL, NULL, SW_SHOWNORMAL); // 打开网页www.google.com
ShellExecute(NULL,"explore", "D:\\C++",NULL,NULL,SW_SHOWNORMAL); // 打开目录D:\C++
ShellExecute(NULL,"print","C:\\Test.txt",NULL,NULL, SW_HIDE); // 打印文件C:\Test.txt
ShellExecute不支持定向输出。

 

WinExec("D:\\Program Files\\Test\\Test.exe",SW_SHOWMAXIMIZED);

ShellExecute(NULL,"open","C:\\Test.txt",NULL,NULL,SW_SHOWNORMAL);
bool fRet=CreateProcess("D:\\putty.exe",NULL,NULL,FALSE,NULL,NULL,NULL,NULL,&si,&pi);
 
如何在vc程序中调用exe文件
ShellExecute(this->m_hWnd,"open","notepad.exe",
    "c:\\scandisk.log","",SW_SHOW );
 

用创建独立子进程的方法。也可以不独立,下面的代码创建的子进程是独立的。

BOOL ret;
PROCESS_INFORMATION pi;
STARTUPINFO si;
si.cb = sizeof(si);
si.wShowWindow = SW_SHOWNORMAL;
ret = CreateProcess(_T("c:\xx.exe"),NULL,NULL,FALSE,0,
                    NORMAL_PRIORITY_CLASS,NULL,NULL,&si,&pi);
if (ret)
{
   CloseHandle(pi.hThread);
   CloseHandle(pi.hProcess);
}




//Show in notepad
PROCESS_INFORMATION pi;
STARTUPINFO si;
//初始化变量
memset(&si,0,sizeof(si));
si.cb=sizeof(si);
si.wShowWindow=SW_SHOW;
si.dwFlags=STARTF_USESHOWWINDOW;
//打开记事本程序
CString myexe="notepad.exe "+errfile;
LPSTR pexe;
pexe=(LPSTR)(LPCTSTR)(myexe);
BOOL fRet=CreateProcess(NULL,
    //"c:\\winnt\\notepad.exe disterror.err",
    pexe,
    NULL,
    NULL,
    FALSE,
    NORMAL_PRIORITY_CLASS|CREATE_NEW_CONSOLE,
    NULL,
    NULL,
    si,
    pi);
if(!fRet)
{
    //创建失败,显示错误信息
    MessageBox("错误:结果输出到文件错误!","输出结果",MB_ICONERROR);
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值