var
hProcess : THandle;
tid, pid : DWORD;
hWndMe : HWND;
begin
WinExec(PChar('C:\Program Files\GRETECH\GomPlayer\GOM.exe E:\aaa\aaa.avi'),SW_SHOWNORMAL);
------------------------------------------------------------------
위의 내용 처럼 코딩해서 외부 프로그램을 실행 하였습니다.
aaa.avi 동영상 내용이 모두 나타나고 나면 GOM 을 강제 종료 시켜 주려고 합니다.
임의의 버튼을 눌러서 GOM 을 강제 종료는 가능합니다.
그러나 여기서는 동영상 내용이 끝나면 강제 종료를 시켜야 합니다.
제발 도와주세요...
곰플레이어의 실행 옵션중에 플레이 종료시 동작과 관련된 옵션이 있는지 조사하시는 것이 빠를 것으로 보여집니다.
혹은 러프한 방법으로 CreateProcess를 사용한 경우에 대해서 WaitForInputIdle로 잡아낼 가능성도 있기는 하지만 곰플레이어의 동작 방식을 알 수 없으므로 가능성이 있다 없다고 말씀드리긴 힘들 것 같습니다.
현재 제일 무난한 방법으로 생각나는 것은 환경설정중 "재생이 끝났을 경우"에 대한 값을 (있는지는 모르겠습니다. 대체적으로 존재했던 기억이 있어서 적습니다.) 미리 종료로 선택해 놓는다던가, 호출하는 프로그램에서 곰플레이어를 실행하기 전에 곰에서 사용하는 옵션정보파일중 해당 필드의 값을 수정한 후 동작시키는 방법입니다.
그런데 WinExec로 실행을 시키셨다면 버튼을 눌러 Gom을 강제로 종료시키는 루틴이 궁금합니다.
다중 프로세스로 동작할 경우 상당히 위험한 동작이 될 것으로 보여지는데요.