var H: HWND;
begin
H := FindWindow('Notepad', nil);
If H = 0 then
begin
showmessage('not Find');
exit;
end;
Edit1.CopyToClipboard;
SendMessage(h, WM_COPYDATA, 0, 0);
//SendMessage(h, WM_PASTE, 0, 0);
end;
도저히 안되더군요....ㅠㅠ
여기 저기서 다 찾아봤는데, 된다고 나오는디.....흑~
그럼 부탁드립니다......꾸벅꾸벅~
> var H: HWND;
> begin
> H := FindWindow('Notepad', nil);
> If H = 0 then
> begin
> showmessage('not Find');
> exit;
> end;
> Edit1.CopyToClipboard;
> SendMessage(h, WM_COPYDATA, 0, 0);
> //SendMessage(h, WM_PASTE, 0, 0);
> end;
>
> 도저히 안되더군요....ㅠㅠ
> 여기 저기서 다 찾아봤는데, 된다고 나오는디.....흑~
> 그럼 부탁드립니다......꾸벅꾸벅~
안녕하세요! 소스는 잘 보았습니다.
한가지 중요한 점이 있습니다. 무엇이냐 하면 운영체제(윈도우즈)는 실행되고 있는 프로그램에게 많은 메세지를 보냅니다. 지금 이 순간에도.... 하지만 메세지를 받는 프로그램은 그런 모든 메세지에 대답할 의무가 없습니다. 즉! 자신의 입맛에(?) - 자기가 필요한 메세지만을 사용(응답)한다는 것 입니다. 때문에 위 코드에서 메모장은 WM_PASTE 메세지에 응답하지 않는것 같습니다.
하지만 WM_CLOSE 같은 메세지는 필요하기 때문에 응답을 하는거구요~
답변이 됐는지 모르겠군요.