안녕하세요.
이런 부분은 다뤄본적이 없어서 2가지를 문의 해 봅니다.
[클릭의 경우]
기존 VB를 이용해서 프로그램을 할때 A라는 프로그램이 있다면,
A프로그램의 특정 위치를 클릭하고 싶을 경우 아래처럼 처리했습니다.
1. A프로그램 활성화
2. 클릭하고 싶은 좌표에 마우스 클릭 이벤트 발생
- 클릭 좌표는 윈도우즈 화면기준으로 (0,0)의 절대좌표를 기준으로해서
무식하게 클릭할 위치를 설정했었습니다.
해당 프로그램을 기준으로한 상대 좌표로 가능하면 좋겠는데 안되었던것 같은...
즉, 반드시 클릭하고 싶은 프로그램을 활성화 시킨뒤에
윈도우즈 화면의 절대 좌표를 기준으로해서 API를 이용하여
해당 위치에 마우스를 위치시킨뒤 클릭 이벤트를 보냈었습니다.
그러다보니 항상 해당 프로그램이 활성화 되어야 하는 문제가 있더군요.
오래된 기억이라 정확하지 않은데 예전에 어떤분이 P2P같은 프로그램을
쉽게 이용하고자 만드셨던 자동 클릭(?) 같은 프로그램이 있던데..
그분이 프로그램 설명에 .NET데에서는 그런게 가능하다라고 했던거 같아서 문의 드립니다.^^
혹시라도 특정 프로그램을 TOP으로 활성화시킨뒤에 클릭하는 방법이 아니라,
A프로그램을 백그라운드 상태로 동작하도록 하면서
해당 프로그램의 특정 위치에 마우스 클릭이벤트를 줄 수 있는지요?
가능하면 가급적 A프로그램 기준의 상대 좌표였으면 싶은데
혹시라도 이런게 가능하다면 어떤 자료들을 참고하면 될런지요^^
[화면 캡춰의 경우]
위와 비슷한 질문인데..
예전 VB로는 불가능하더군요.
A라는 동작 중인 프로그램이 있는데 이 프로그램의 화면을 캡춰하고 싶습니다.
지금까지는 캡처프로그램으로 화면을 캡춰하듯이 A프로그램을 활성화 한뒤에
윈도우즈 화면을 기준으로 특정 위치를 지정해서 캡춰를 했었습니다.
일종의 모니터링 프로그램처럼 화면 로그를 남기려고 특정 주기로 화면을 캡춰하는데
일반 작업(예:메모장등등)을 하는 도중 갑자기 화면 캡춰를 위해서
A프로그램이 활성화 되버리는 등의 문제가 발생하기때문에..
혹시라도 C#에서는 캡춰하고자 하는 A라는 프로그램을 백그라운드로 동작하면서
해당 프로그램의 화면을 캡춰하는 방법이 있는지 문의 드립니다.
가능하다면 관련 소스나 자료는 어떤걸 참조하는지 부탁드릴께요^^
두 질문이 비슷하긴한데 용도별로 나눠봤습니다.^^
요는... 특정 프로그램을 백그라운드 상태로해서 핸들링하고 싶은것입니다.
마우스 이벤트를 보낸다거나 해당 화면의 내용을 캡춰한다거나....
좋은하루되세요.
[최초 등록일: ]
[최종 수정일: 1/27/2008]