DLL에 서브클래싱을 하려다가
정규화된 프로시져가 아니라는 말때문에..
x.wndproc := DLL안에 선언된(wndproc)..
요게 안되더라구요...
요점만 말씀드리면...
저는 DirectShow를 이용해서 기본 함수, 프로시저는 DLL에
선언및 코딩하고 DLL을 이용해서 플래이어를 하나만들려고
하는데요...
재생은 되게했는데...노래가 끝나는 시점을 어떻게 Form에
알릴방법을 모르겠네요...
다른 코드들을 보니까 서브클래싱을 해서 EC_COMPLETE
메시지를 발생시킬때를 잡아서 그 시점을 알던데...
DLL안에서 서브클래싱하는 방법을 잘 몰라서리...
메시지를 가로채는 방법말고는 종료시점을 알 수
없을까요??
도아주십시오...--;
DLL안에서 핸들을 생성해.. 플레이어에 핸들을 생성한 핸들을 넘기면..
메세지가 그 핸들쪽으로 EC_COMPLETE 날아올때.. 처리하심 되겠네요.
생성:
FWindowHandle := Classes.AllocateHWnd(WndProc);
파괴:
Classes.DeallocateHWnd(FWindowHandle);
procedure WndProc(var Msg: TMessage);
begin
end;