用winexec 在应用程序中启动其他的程序?

iamluda 2008-06-03 12:14:28
使用用winexec 在应用程序中启动其他的程序,代码如下:
::WinExec(tagapp_name, SW_MAXIMIZE);

在debug 版下一切正常.

在release 版下, 被执行的exe程序只是闪了一下,就不见了.
同时在release 版的调试环境给出
First-chance exception in ebook.exe (KERNEL32.DLL): 0x800706BE: (no name).

如何解决在release 版下的问题?

...全文
112 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianya8318 2008-06-04
  • 打赏
  • 举报
回复
你使用本地系统用户启动的还使用当前用户启动的,在本地系统用户下启动会出现这种情况该到当前用户启动,在当前用户下最好使用CreateProcess()来启动。
jackson35296 2008-06-03
  • 打赏
  • 举报
回复
是什么样的exe?如果是win32的,main()执行完毕就退出了,加个while(1) {Sleep(1000);}保持一下看看
cnzdgs 2008-06-03
  • 打赏
  • 举报
回复
用SW_SHOWMAXIMIZED试试。另外建议用CreateProcess或者ShellExecute来创建进程,WinExec是为了兼容早期16位程序而保留的。
大熊猫侯佩 2008-06-03
  • 打赏
  • 举报
回复
看反汇编代码,检查代码差异。
liyinlei 2008-06-03
  • 打赏
  • 举报
回复
tagapp_name 注意要启动的那个程序的路径问题。

15,466

社区成员

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

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