function TitleToWnd( TitleText: String ): HWND;
var
i: Integer;
C: array[0..255] of Char;
begin
Result := 0;
for i:= 0 to 65535 do
begin
GetWindowText( i, C, SizeOf( C ) );
if StrPas( C ) = TitleText then
begin
Result := i;
Break;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
AWnd: HWND;
begin
AWnd := TitleToWnd( '한글' );
if AWnd <> 0 then SendMessage( AWnd, WM_CLOSE, 0, 0 );
end;
답변 감사한데요. 이부분은 저두 알구 ^^;
저는 아래 프로그램 자체가 실행이 안되도록.
워드 한글이 실행 될때 바로 kill 되는 거죠.
아래는 프로그램은 한글이 실행 사용되고 있고,
그상태에서 프로그램상의 버튼을 클릭 했을때 워드 한글을 종료 하쟎아요.
전 아에 한글이 실행 안되도록 하고 싶어요.
무모하게 타이머로 계속 탐지 하고 싶지 두 않구요.
윈도우상에서 워드나 기타등등의 프로그램이 실행 될때의 메시지가 어케 되는지. 이때의 메세지를 캐취해서 응용 하면 될꺼 같은 데....^^;
제가 허접 이라서...--;
-----타이틀으로 핸들값 얻기----------------------------------------
function TitleToWnd( TitleText: String ): HWND;
var
i: Integer;
C: array[0..255] of Char;
begin
Result := 0;
for i:= 0 to 65535 do
begin
GetWindowText( i, C, SizeOf( C ) );
if StrPas( C ) = TitleText then
begin
Result := i;
Break;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
AWnd: HWND;
begin
AWnd := TitleToWnd( '한글' );
if AWnd <> 0 then SendMessage( AWnd, WM_CLOSE, 0, 0 );
end;