如何得到ShellExecute打开的应用程序的handle以关闭程序

pmars 2010-11-17 10:36:43
RT
用ShellExecute打开的应用程序如何关闭??
打开:ShellExecute(CClientWnd::hWnd,A2W("open"),fileSet.back()->filePathName,A2W(""),A2W(""),SW_SHOW );
关闭:???
...全文
105 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
pmars 2010-11-17
  • 打赏
  • 举报
回复
谢谢药师的回答,这种方法能够打开各种文件,但是关闭的时候只能关闭绝大部分的,比如:TXT,WORD,PDF,CPP,RAR,PPT等等,但是我打开视频的时候,程序就关不了了!
我觉得那些能够关闭的是单独的软件来打开这种文件,而对于视频来说,不同格式的视频可以在一个播放器中观看,相同格式的视频可以在不同播放器中观看等等,这样就不能关闭了,是这样么?
还有,我要是打开视频的话,比如:avi,wmv等等,这样的话,我如何关闭程序呢?
周药师 2010-11-17
  • 打赏
  • 举报
回复

void __fastcall TForm1::Button1Click(TObject *Sender)
{
SHELLEXECUTEINFO ShExecInfo = {0};
ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS;
ShExecInfo.hwnd = NULL;
ShExecInfo.lpVerb = NULL;
ShExecInfo.lpFile = "c:\\Timer.exe ";
ShExecInfo.lpParameters = " ";
ShExecInfo.lpDirectory = NULL;
ShExecInfo.nShow = SW_SHOW;
ShExecInfo.hInstApp = NULL;
ShellExecuteEx(&ShExecInfo);
Sleep(3000); //延时3秒后关闭刚才打开的程序
TerminateProcess(ShExecInfo.hProcess,INFINITE);
}

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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