|
창조 팁 - '창조' 에 관한 팁을 올리는 곳입니다. 다수의 이미지가 필요하시면 아래 '이미지 자료실' 에 업로드 후 불러와 주세요.. |
| Posted by 이희창[빙고] | 2006-03-15 17:50:26, Hit : 6292 | |
|
|
|
메모장(제목 없음 - 메모장)이 실행되면 닫아버리고 없으면 특정명렁어... 박종훈님의 작업관리자막기 소스를 보고 응용한것입니다;
그냥 명령어만... 제가 말하고싶은건(?) 반환되는값을 말하고싶었기때문에...
실수:아싸;
아싸:=사용자함수0.FindWindowA("", "제목 없음 - 메모장"); 만일(아싸=0) { 문자창보여("없다"); } 아니면{ SendMessage(아싸,16,0,0); SendMessage(아싸,2,0,0); SendMessage(아싸,130,0,0); SendMessage(아싸,18,0,0); }
*관련주소 박종훈님의 작업관리자막기 =http://cugz.com/bbs/zboard.php?id=pds_sc&no=427
|
|
|
박종훈 2006-03-15 PM 7:24:04 |
|
|
|
윽.. 기타자료실에 메모장을 Kill하는 소스가 있는데.. 큭;
그리고, "제목 없음 - 메모장" 이라는 보장은 없습니다..
파일을 열면, "파일명 - 메모장" 이렇게 뜨죠..
힌트!)
메모장을 Kill 하는 지상현님의 소스를 보면은.. 창의 제목이 아닌 클래스명으로
메모장을 찾아냅니다.. 메모장은 notepad 라는 클래스명을 가지고 있습니다..
따라서, FindWindowA("", "제목 없음 - 메모장"); 라는 부분을,
FindWindowA("notepad", ""); 라고 하시는 것이 더 확실할 겁니다. ^^..
제가 말씀드린 방법은, 클래스명으로 메모장을 찾고, 제목으로 찾지않습니다..
그리고, SendMessage(아싸,16,0,0); 만 있어도 될겁니다..
(지상현님 소스에 그렇게 나와있으니 ^^;)
그리고, 시계에 이 명령어를 넣으시려면,
만일(아싸=0)
{
문자창보여("없다");
}
는 빼시고 하시는 것이 좋을겁니다.. 시간 간격이 1이라면,
1000분의 1초마다, 문자창이 뜨는 것이기 때문에.. 큭;
그리고, 작업관리자막는 것은 엄청난 노가다성 소스라는 큭큭큭..;
저의 작업관리자막는 소스에서,
SendMessage(아싸,16,0,0);
SendMessage(아싸,2,0,0);
SendMessage(아싸,130,0,0);
SendMessage(아싸,18,0,0);
를 넣는 이유는, VB소스에 그렇게 나와있어서 그만.. 퍽!!! |
|
|
박종훈 2006-03-15 PM 7:34:38 |
|
|
|
작업관리자 막기 소스에서..
SendMessage(핸들,16,0,0);
SendMessage(핸들,2,0,0);
SendMessage(핸들,130,0,0);
SendMessage(핸들,18,0,0);
대충 이렇게 나와있죠?
여기에서, {16, 2, 130, 18} 이라는 숫자의 의미를 알려드리겠습니다. ^^;
우선, SendMessage 는 메시지를 보내는 API함수입니다..
Message 라고 해서, 쪽지, 메일, 답장 이런것을 생각하시면 안됩니다. ^^;
그럼 이제 들어갑니다. ^^;
16 - WM_CLOSE 이라는 메시지의 상수값입니다. WM_CLOSE 는 윈도우를 닫는 메시지입니다..
창조의 [ㅎ창.닫아] 명령어 비슷한 겁니다. ^^..
2 - WM_DESTROY 이라는 메시지의 상수값입니다. WM_DESTROY는 윈도우를 제거하는 메시지입니다..
창조의 [제거해] 명령어와 비슷한 겁니다. ^^..
130 - WM_NCDESTROY 이라는 메시지의 상수값입니다.
죄송하게도.. 어떻게 설명드려야 할지 모르겠습니다. ^^;
WM_DESTROY 와 비슷하다고 보시면..; (퍽!!!)
18 - WM_QUIT 이라는 메시지의 상수값입니다. WM_QUIT는 응용프로그램을 종료하는 메시지입니다.
창조에서 [끝내] 명령어와 비슷한 겁니다..
그외 여러가지 메시지 상수값을 올려드릴께요 ^^; |
|
|
손상진 2006-03-15 PM 9:07:22 |
|
|
|
WM_QUIT 만해서는.. 프로그램이 종류 안되는지요.. |
|
|
박종훈 2006-03-16 PM 8:35:47 |
|
|
|
어.. 한번 해보니까요.. WM_QUIT로 하니까, 종료는 되지 않네요 ^^;
WM_CLOSE로 하니, 종료는 되는데요..
WM_CLOSE는 창을 닫는 메시지인데요.. 아마 프로그램이 종료되는 이유는
그 창이 기본창이 어서 입니다.. 실제로 창을 여러개 만들고,
해보니, 기본창이 아닌 창에다가 WM_CLOSE를 하니, 그 창이 닫히기만 하더군요..
따라서, WM_CLOSE는 때에 따라서, 잘 안될수도 있다는 겁니다!
음.. 그럼 어떻하지 ─ ─^; |
|
|
지상현 2007-01-08 PM 12:04:18 |
|
|
|
WM_CLOSE - 창을 닫아라. X 버튼을 누른 것과 비슷한 효과. 취소 가능
WM_DESTROY - 창을 파괴해라. 그냥 창 자체를 바로 없애고, 핸들을 무효화.
WM_NCDESTROY - 창의 비클라이언트 영역 파괴. 클라이언트 영역이란, 흔히 창 내용이 들어가는 가운데 영역이고, 비클라이언트 영역은 제목표시줄, 테두리 같은 부분. 실제로 이 메시지는 알림용으로 존재함.
WM_QUIT - 프로그램을 종료해라. 물론 프로그램이 이 메시지를 무시하면 종료 안됨. 대부분의 프로그램은 종료됨.
메시지는 어디까지나 신호니까, 100% 명령을 실행한다고 볼 수 없습니다. 받는 쪽에서 무시하면 그만이니까요. |
|
|
지우개 Expert 3.0 제작자 : 천호성 님 [LINK] |
|
|
|
대박로또2005 제작자 : 최재일 님 [LINK] |
|
|
1 | 박종훈 님 | 15292 점 | |
2 | 지상현 님 | 8809 점 | |
3 | 손상진 님 | 7389 점 | |
4 | 권선중 님 | 6061 점 | |
5 | 이진백 님 | 5174 점 | |
|
|
|
가입일 | 닉네임 |
05/31 | 김동률 |
03/31 | 홍형기 |
09/01 | o00pp99oo |
12/27 | 이재민 |
11/20 | 이희철 |
|
|
|
|
. |
. |
. |
|