안녕하세요
자꾸 이부분이 막혀서 진도가 안나가는군요 ㅠ.ㅠ
델파이언들의 도움을 요청합니다.^^
밑에 보내는 방식으로 보내면 받는쪽 폼이 떠 있으면 되는데
Disable 되어있으면 메세지를 받지 못합니다.
시스템 등록되서 화면은 없고 돌아가는 프로그램입니다.
폼이 있는데 폼을 없고 시스템 등록된 아이콘을 오른쪽 마우스로 눌러서
팝업 메뉴만 나오는 상태입니다. 이 상태에서는 메세지를 받지 못합니다.
팝업 메뉴에서
Visible := True;
ShowWindow(Application.Handle, SW_SHOW);
시켜서 보이게 하면 메세지 교환이 가능해 집니다.
무엇이 잘 못 되었는지 모르겠습니다 알고 계신 님들 좀 가르쳐 주세요..ㅠ.ㅠ
<예제>
################ 받는 부분 #####################
<선언>
procedure OnEventMsg(var Msg : TMessage) ; message WM_USER+101;
<함수>
procedure TMainFrm.OnStartsms(var Msg : TMessage);
var
hClient : HWND;
begin
lstExeFile.Items.Add('서버 - 메세지 받음');
hClient := FindWindow(nil,'Project1');
PostMessage(hClient, WM_USER+150, 0, 0 );
end;
################ 보내는 부분 #####################
<1번째 방씩으로 배내기>
procedure TForm1.Button1Click(Sender: TObject);
var
hSms : HWND;
begin
hSms := FindWindow(nil,'어플리케이션 타이틀');
PostMessage(hSms, WM_USER+150, 0,0);
end;
<2번째 방법으로 배내기>
procedure TForm1.Button2Click(Sender: TObject);
var
hSms : HWND;
begin
hSms := FindWindow(nil, '프로그램 타이틀');
sendMessage(hSms, WM_USER+150, 0,0);
// sendMessage 대신에 PostMessage 방식으로도 해봤음..
end;