我正在从MFC应用程序启动WPF应用程序。有时,当我启动WPF应用程序时,确实启动了该应用程序,但是它没有出现在任务栏中。并保持在主应用程序后面。因此,我一直在等待该应用程序尚未启动。当我最小化主应用程序时,我看到它已经启动。谁能确定发生了什么事?
谢谢
您使用的ShellExecute错误。请在这里看看。最后一个参数nShowCmd为:
用于指定在打开应用程序时如何显示的标志。如果lpFile指定一个文档文件,则将该标志简单地传递到关联的应用程序。由应用程序决定如何处理它。这些值在Winuser.h中定义。
因此,您需要指定所需的ShowWindow标志。我建议使用SW_SHOWNORMAL或SW_MAXIMIZE:
int nResult = (int)::ShellExecute(NULL, _T("open"), sExePath, NULL, NULL, SW_SHOWNORMAL);
或者
int nResult = (int)::ShellExecute(NULL, _T("open"), sExePath, NULL, NULL, SW_MAXIMIZE);
检查函数的返回码也是一个好主意。如果成功,则nReturn中的值应大于32。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句