怎么通过程序关闭另一个已经运行的EXE

如何通过程序关闭另一个已经运行的EXE?
如题

谢谢

------解决方案--------------------
列举进程,然后关闭它,只要知道文件名就行了.一般用 
HANDLE WINAPI CreateToolhelp32Snapshot( 
DWORD dwFlags,
DWORD th32ProcessID
);
------解决方案--------------------
找到窗口的句柄,发送消息WM_CLOSE
找到进程句柄,TerminateProcess

------解决方案--------------------
干干净净杀死进程
http://www.vckbase.com/document/viewdoc/?id=415
------解决方案--------------------
HWND hWnd;
// 先得到想要关闭的窗口的句柄
// 比如用FindWindow
hWnd=FindWindow(NULL,_T("dlg"));
if ( hWnd ==NULL )
return ;
// 下面是关闭进程的两种方法
// // 如果来文的则 //
::PostMessage(hWnd,WM_CLOSE,0,0);

// // 如果来武的则 //
DWORD dwProcessId;
// 得到该窗口的进程ID
GetWindowThreadProcessId(hWnd,&dwProcessId);
// 从进程ID打开进程句柄
HANDLE handle=OpenProcess(0,FALSE,dwProcessId);
// 强制终止进程
TerminateProcess(handle,0);



from http://topic.csdn.net/t/20010412/16/95828.html
------解决方案--------------------
先找进程ID,然后根据ID杀死进程

如何获取某个进程的主窗口以及创建进程的程序名?

http://www.vckbase.com/document/viewdoc/?id=404

干干净净杀死进程

http://www.vckbase.com/document/viewdoc/?id=415
------解决方案--------------------
ding
------解决方案--------------------
HWND hwnd = ::FindWindow(NULL,"C:\\WINDOWS\\system32\\cmd.exe"); 
//::DestroyWindow(hwnd); 
::SendMessage(hwnd,WM_CLOSE,0,0);
------解决方案--------------------
看你要关闭的是一个什么样的程序。对于常规的窗口程序,可以用FindWindow根据窗口类名或标题找出窗口,然后向其发WM_CLOSE消息。强行关闭可以根据进程ID打开进程,然后TerminateProcess,但有些情况这种方法也不能结束进程,需要分析具体情况来想办法。
------解决方案--------------------
杀掉进程