Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
RichEdit,마우스 커서위치의 문자열 뽑기
안녕하십니까? 고수님들.
여기 이렇게 좋은 곳이 있는줄 몰랐네여...
무슨 문서들을 richedit에 표시해놓고....
그 가운데 특정 단어들에 대한 참고내용을 아래아 한글의 사전처럼
팝업 화면으로 보여주려고 하는데...
마우스 커서의 아래에 있는 문자열(좌우에 공란으로 구별되어진..)
을 뽑는 방법을 몰라 헤메고 있습니다.
좋은 방법 없습니까?
오늘도 여하튼 승리하시는 날 되시길....
1
COMMENTS
구창민
•
1999.09.18 21:02
노동춘 wrote:
> 안녕하십니까? 고수님들.
>
> 여기 이렇게 좋은 곳이 있는줄 몰랐네여...
>
> 무슨 문서들을 richedit에 표시해놓고....
> 그 가운데 특정 단어들에 대한 참고내용을 아래아 한글의 사전처럼
> 팝업 화면으로 보여주려고 하는데...
> 마우스 커서의 아래에 있는 문자열(좌우에 공란으로 구별되어진..)
> 을 뽑는 방법을 몰라 헤메고 있습니다.
>
> 좋은 방법 없습니까?
>
> 오늘도 여하튼 승리하시는 날 되시길....
>
노동춘님 안녕하세요?
말씀하신 기능의 구현이 정말 어려워요..
전에 한번 시도해았다가.. 저의 실력없음을
다시 한번 깨닫는 계기가 되었지요..에궁..
윈도우 동호회에 백성수님이 노클릭알고리즘에 대해 설명한 글을 올립니다.
백성수님은 한컴에서 사전을 개발하신 분이라는군요
#572 백성수 (bsssmo )
[참고]노클릭 알고리즘 08/05 12:06 21 line
0. 도스시절에 램상주 프로그램을 했던 분들이라면 더욱 쉽게 이해하리라
생각합니다.
1. 마우스 위치의 윈도우 핸들을 얻는다. (GetCursorPos, WindowFromPoint)
2. TextOut/ExtTextOut함수를 가로챈다.
TextOut함수의 주소를 얻고 NewTextOut함수를 만든다. (GetProcAddress)
기존의 TextOut함수 주소에 기존의 내용을 복사하고 새 NewTextOut함수로
건너뛸수 있도록 기계어를 세팅한다. ( jmp NewTextOut)
3. 마우스 위치를 다시 출력하 도록 설정한다. (InvalidateRect, UpdateWindow)
이렇게 되면 윈도우는 WM_PAINT메시를 날린다. 그리고 출력 함수인 TextOut
을 호출한다. TextOut은 다시 NewTextOut으로 점프를 하게 되므로 우리가
원하는 단어의 내용을 얻을 수 있다.
4. TextOut내용을 원상 복귀한다.
위의 상화은 16비트로 작성하셔야합니다. 윈 95의 API함수들은 대부분 16비트를
썽킹(Thunk)해서 쓰고 있기 때문에....
NT에서는 안됩니다. NT에서는 다른 방법으로 해결해야 합니다.
나중에 기회가 되면 또 올리죠....
<끝>
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
표경나
1999.09.18 20:27
0
COMMENTS
/
0
LIKES
특정 콤포넌트 찾기
노동춘
•
1999.09.18 19:45
1
COMMENTS
/
0
LIKES
RichEdit,마우스 커서위치의 문자열 뽑기
안녕하십니까? 고수님들. 여기 이렇게 좋은 곳이 있는줄 몰랐네여... 무슨 문서들을 richedit에 표시해놓고.... 그 가운데 특정 단어들에 대한 참고내용을 아래아 한글의 사전처럼 팝업 화면으로 보여주려고 하는데... 마우스 커서의 아래...
구창민
•
1999.09.18 21:02
노동춘 wrote: > 안녕하십니까? 고수님들. > > 여기 이렇게 좋은 곳이 있는줄 몰랐네여... > > 무슨...
문성준
•
1999.09.18 19:41
1
COMMENTS
/
0
LIKES
[추가질문]IBM AS400을 아시는 분??
이진우
•
1999.09.22 22:59
문성준 wrote: > 밑에 질문한 사람임다..또 있어서리..흐.. > 혹 IBM AS400을 사용하시는 분 계십니까.....
문성준
•
1999.09.18 19:38
2
COMMENTS
/
0
LIKES
윈도우 재시작 명령.. + 네트웍 로긴을 자동으로 하는 법
문성준
•
1999.09.18 19:52
문성준 wrote: > 안녕하십니까.. > 다음주가 추석인 멋진 주말입니다. > 델파이에서 윈도우를 종료하는 ...
이정욱
•
1999.09.20 19:53
TweakUI 라는 유틸리티가 있습니다. 이것을 사용하시면 됩니다. 이것은 일반 통신망 공개자료실에서 찾아...
송기원
•
1999.09.18 19:29
1
COMMENTS
/
0
LIKES
다른 프로그램의 윈도우에 마우스 클릭 메세지 보내는방법?
구창민
•
1999.09.18 20:45
송기원 wrote: > 예로든다면 Internet Explorer의 특정한 좌표에 마우스를 클릭한듯한 > 효과를 내기위해...
한상훈
•
1999.09.18 19:08
1
COMMENTS
/
0
LIKES
window 프로그램
구창민
•
1999.09.18 20:30
한상훈 wrote: > 안녕하세요 오랜만에 들어와 보니 더 멋있게 바뀌었네요.. 축하합니다. > > 질문내용...
진현주
•
1999.09.18 19:07
2
COMMENTS
/
0
LIKES
Seagate Crystal Reports 를 델파이에서 쓸수있나요?
김민규
•
1999.09.22 23:27
진현주 wrote: > > 여러가지 복잡한 레포트를 찍어야 하는데 > 마땅한게 없네요. > > Seagate Cryst...
최수영
•
1999.09.24 06:20
김민규 wrote: > 진현주 wrote: > > > > 여러가지 복잡한 레포트를 찍어야 하는데 > > 마땅한게 없네...
김성영
1999.09.18 18:57
0
COMMENTS
/
0
LIKES
stringGrid에 대해서
이동원
1999.09.18 15:51
0
COMMENTS
/
0
LIKES
겹쳐진 두개의 이미지를 하나로 저장하려면
이광주
•
1999.09.18 10:28
1
COMMENTS
/
0
LIKES
여러개의 IP중 서버데몬이 실행중인 IP찾기..
안치봉
•
1999.09.18 21:33
잘은 모르고 해보지는 않았지만 데몬이라면 대충... 웹서버, FTP.. 등이 있는걸로 아는데... 이런 데몬...
이권혁
1999.09.18 09:34
0
COMMENTS
/
0
LIKES
엑셀의 주석달기 같은 기능 구현가능한가요?
기노현
1999.09.18 09:17
0
COMMENTS
/
0
LIKES
Quick Report 컴파일 문제
김민정
1999.09.18 08:19
0
COMMENTS
/
0
LIKES
파라메터 type이 변경되는 현상....
박동진
1999.09.18 06:15
0
COMMENTS
/
0
LIKES
산업기사 델파이 보신분....
zion
•
1999.09.18 04:44
1
COMMENTS
/
0
LIKES
PC 의 Network 환경을 알려면..?
구창민
•
1999.09.18 05:03
zion wrote: > 안녕하세요... > Network(LAN)으로 연결된 다른 PC의 IP Address 를알고 있을경우 > 그P...
강영석
1999.09.18 04:36
0
COMMENTS
/
0
LIKES
oracle에서 data type "bfile"을...
오용섭
•
1999.09.18 04:01
1
COMMENTS
/
0
LIKES
레포트 작성시 표는 어떻게 그려야 되나요?
최수영
•
1999.09.18 17:00
오용섭 wrote: > 안녕하세요 > > 이번에 프로그램을 델파이로 작성해서 출력할려구 레포트로 도표를 작...
강태완
1999.09.18 17:31
0
COMMENTS
/
0
LIKES
[급한질문]마스터-디테일 출력하기
keedos
1999.09.18 03:33
0
COMMENTS
/
0
LIKES
[급질문]특정한 랜카드로의 신호보내기
kouki
•
1999.09.18 03:16
1
COMMENTS
/
0
LIKES
이런에러 아시는분 알려주세요??
camplus
•
1999.09.18 20:31
그런 에러는 굉장히 많이 나는 에러중 하나인데, 소스 코드도 같이 올려주시면,, ^^;; kouki wrote: ...
노동춘
1999/09/18 19:45
Views
1558
Likes
0
Comments
1
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
> 안녕하십니까? 고수님들.
>
> 여기 이렇게 좋은 곳이 있는줄 몰랐네여...
>
> 무슨 문서들을 richedit에 표시해놓고....
> 그 가운데 특정 단어들에 대한 참고내용을 아래아 한글의 사전처럼
> 팝업 화면으로 보여주려고 하는데...
> 마우스 커서의 아래에 있는 문자열(좌우에 공란으로 구별되어진..)
> 을 뽑는 방법을 몰라 헤메고 있습니다.
>
> 좋은 방법 없습니까?
>
> 오늘도 여하튼 승리하시는 날 되시길....
>
노동춘님 안녕하세요?
말씀하신 기능의 구현이 정말 어려워요..
전에 한번 시도해았다가.. 저의 실력없음을
다시 한번 깨닫는 계기가 되었지요..에궁..
윈도우 동호회에 백성수님이 노클릭알고리즘에 대해 설명한 글을 올립니다.
백성수님은 한컴에서 사전을 개발하신 분이라는군요
#572 백성수 (bsssmo )
[참고]노클릭 알고리즘 08/05 12:06 21 line
0. 도스시절에 램상주 프로그램을 했던 분들이라면 더욱 쉽게 이해하리라
생각합니다.
1. 마우스 위치의 윈도우 핸들을 얻는다. (GetCursorPos, WindowFromPoint)
2. TextOut/ExtTextOut함수를 가로챈다.
TextOut함수의 주소를 얻고 NewTextOut함수를 만든다. (GetProcAddress)
기존의 TextOut함수 주소에 기존의 내용을 복사하고 새 NewTextOut함수로
건너뛸수 있도록 기계어를 세팅한다. ( jmp NewTextOut)
3. 마우스 위치를 다시 출력하 도록 설정한다. (InvalidateRect, UpdateWindow)
이렇게 되면 윈도우는 WM_PAINT메시를 날린다. 그리고 출력 함수인 TextOut
을 호출한다. TextOut은 다시 NewTextOut으로 점프를 하게 되므로 우리가
원하는 단어의 내용을 얻을 수 있다.
4. TextOut내용을 원상 복귀한다.
위의 상화은 16비트로 작성하셔야합니다. 윈 95의 API함수들은 대부분 16비트를
썽킹(Thunk)해서 쓰고 있기 때문에....
NT에서는 안됩니다. NT에서는 다른 방법으로 해결해야 합니다.
나중에 기회가 되면 또 올리죠....
<끝>