首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • vc++如何調用可執行文件?
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xuebin801125
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 揭贴率:
    发表于:2008-08-23 11:01:28 楼主
    各位大哥大姐:請問在visual studio 2005的vc++項目里面要調用可執行文件,比如(myexe.exe)文件要怎麼寫代碼呢?請大家把完整代碼貼出來,謝謝啦!!!
    5  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wise019
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-22 12:08:321楼 得分:0
    way  1: 
      ShellExecute(NULL,NULL,"myexe.exe",NULL,NULL,SW_MAXIMIZE  ); 
       
      way  2: 
      STARTUPINFO  si; 
      ::ZeroMemory(&si,sizeof(STARTUPINFO)); 
      si.cb=sizeof(STARTUPINFO); 
      PROCESS_INFORMATION  pi; 
       
      if(::CreateProcess(NULL,_T("myexe.exe"),NULL,NULL,FALSE,NORMAL_PRIORITY_CLASS,NULL,NULL,&si,&pi)) 
      { 
              ::CloseHandle(pi.hThread); 
              ::WaitForSingleObject(pi.hProcess); 
      } 
       
       
      way3: 
      WinExec("myexe.exe",SW_SHOW); 
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lanlanlan2
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-23 22:33:002楼 得分:0
    楼上的说了两种,C格式的_exec,_spawn也都可以,每一种执行方式在参数上略有区别。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wuroy27496
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-24 08:47:283楼 得分:0
    貌似你编译,运行之后;你的工程头 DBUG 里头就有一个 .exe后缀的可执行文件;直接拉出来可以用```
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wuroy27496
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-24 08:52:314楼 得分:0
      不好意思,刚刚看错了```我以为是哪里找``
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • dyw_net
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-24 09:34:225楼 得分:0
    WinExec("myexe.exe",SW_SHOW);//最方便
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • air_snake
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-07 21:08:536楼 得分:0
    呵呵,好好学学。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • rabbit2006
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-08 10:44:367楼 得分:0
    还有一种:

    system(("myexe.exe");
    与WinExec的区别是必须myexe.exe执行完,才会继续执行,适用与后续程序与myexe.exe操作结果相关的情况

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • pigpy
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-09 01:11:248楼 得分:0
    效率最高的一种就是ShellExecute()了,WinExec()要求是Windows文件,ShellExecute几乎可以打开一切可以打开的文件。
    ShellExecute(NULL,NULL,"myexe.exe",NULL,NULL,SW_SHOWNORMAL); 
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved