mfc中调用.exe文件

jaynaviee 2011-05-20 08:18:06
我用java做了个.exe文件 想在mfc多文档中通过一个菜单把它调用出来
可以用什么方法????
...全文
204 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
psbeond 2011-05-24
  • 打赏
  • 举报
回复
ShellExecute(NULL, _T("Open"), strPath, NULL, NULL, SW_SHOW);
情意书生 2011-05-24
  • 打赏
  • 举报
回复
调用exe可以有两种方法:
1.ShellExecute(NULL,NULL,_T("E:\\ScrnSaverProduct.exe"),NULL,helpPath,SW_SHOW);
2.OnStartProcess("E:\\ScrnSaverProduct.exe");
供参考
tanxianbo520 2011-05-23
  • 打赏
  • 举报
回复
PROCESS_INFORMATION pi;
STARTUPINFO si;
memset(&si,0,sizeof(si));
si.cb=sizeof(si);
si.wShowWindow=SW_SHOW;
si.dwFlags=STARTF_USESHOWWINDOW;
BOOL fRet=CreateProcess(NULL,
"E:\vc++6.0\MSDev98\MyProjects\ns\examples\NSG2.EXE",
NULL,
NULL,
FALSE,
NORMAL_PRIORITY_CLASS|CREATE_NEW_CONSOLE,
NULL,
NULL,
&si,
&pi);
这样试试
QQ515311445 2011-05-23
  • 打赏
  • 举报
回复
CreateProcessW(NULL,EXE路径,NULL,NULL,FALSE,0,NULL,NULL,NULL,NULL);
Lactoferrin 2011-05-23
  • 打赏
  • 举报
回复
PROCESS_INFORMATION pi;
static STARTUPINFOW si={sizeof(STARTUPINFOW)};
wchar_t cmdline[]=L"E:\\vc++6.0\\MSDev98\\MyProjects\\ns\\examples\\NSG2.EXE";
BOOL fRet=CreateProcessW(NULL,
cmdline,
NULL,
NULL,
FALSE,
0,
NULL,
NULL,
&si,
&pi);
许文君 2011-05-23
  • 打赏
  • 举报
回复
你调用时如何写的 路径里是 \ 还是 \\ ,调用失败应该会返回LASTERROR,我叫你用GETLASTERROR查看是不是返回的文件不存在,不是叫你直接从路径上看。
许文君 2011-05-22
  • 打赏
  • 举报
回复
E:\vc++6.0\MSDev98\MyProjects\ns\examples\NSG2.EXE?
getlasterror看看是不是文件不存在
wj709830140 2011-05-22
  • 打赏
  • 举报
回复
ShellExecute
jaynaviee 2011-05-22
  • 打赏
  • 举报
回复
cmd 窗口啊
提示按任意键退出!!!
jaynaviee 2011-05-22
  • 打赏
  • 举报
回复
当然存在!!!!
E:\vc++6.0\MSDev98\MyProjects\ns\examples
向立天 2011-05-21
  • 打赏
  • 举报
回复
你什么系统
如果是win7的话你用管理员启动你的主程序试试
little_sand 2011-05-21
  • 打赏
  • 举报
回复
你换个其他可执行文件试试看
jaynaviee 2011-05-21
  • 打赏
  • 举报
回复
system("E:\vc++6.0\MSDev98\MyProjects\ns\examples\NSG2.exe");


一个窗口一闪就没了!!!
_free 2011-05-21
  • 打赏
  • 举报
回复
或者换其他的程序试试,看能启动不,

也可能nsg2.exe在启动时验证了启动参数了呢
_free 2011-05-21
  • 打赏
  • 举报
回复
有点邪乎,用WinExec("exe path", SW_SHOW);

或者直接system("exe path");试试
jaynaviee 2011-05-21
  • 打赏
  • 举报
回复
NSG2 单独可以使用,也不需要什么管理员的身份!!!
清给位帮帮忙想办法!!!
_free 2011-05-21
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 jaynaviee 的回复:]

引用 6 楼 visualeleven 的回复:
bool fRet=CreateProcess("E:\vc++6.0\MSDev98\MyProjects\ns\examples\NSG2.EXE",NULL,NULL,FALSE,NULL,NULL,NULL,NULL,&si,&pi);
-->
bool fRet=CreateProcess("E:\……
[/Quote]

NSG2单独运行可以吗? 或者是不是需要什么UAC管理员身份运行
,那样的话CreateProcess启动不起来的
Poptang 2011-05-21
  • 打赏
  • 举报
回复
你的exe运行是不是要参数的
jaynaviee 2011-05-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 visualeleven 的回复:]
bool fRet=CreateProcess("E:\vc++6.0\MSDev98\MyProjects\ns\examples\NSG2.EXE",NULL,NULL,FALSE,NULL,NULL,NULL,NULL,&si,&pi);
-->
bool fRet=CreateProcess("E:\\vc++6.0\\MSDev98\\MyProjects\\ns\\……
[/Quote]

这两个都不行,没反应!!
buyong 2011-05-21
  • 打赏
  • 举报
回复
那是什么窗口?
[Quote=引用 18 楼 jaynaviee 的回复:]
窗口是出现了,但不是NSG2的运行窗口
[/Quote]
加载更多回复(9)

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧