[공개용 SW 개발] 다중복사 프로그램
류명운
·2016. 8. 31. 03:24
[공개용 SW 개발] 다중복사 프로그램
이번 공개용 SW 역시 이전 포스팅과 마찬가지로 블로그 관리에 용이한..(저를위한?) 간단한 프로그램을 만들게되어 소개하고자 합니다.
문서작성에 필수는 단연 copy & paste (...) 하지만 해당 기능을 수행하기 위해 저희에게 할당된 클립보드의 버퍼는 단 하나... 그러던 중 자바에서 우연히 Clipboard 라이브러리를 지원한다는 것을 알게되어 다중복사 프로그램을 만들어 사용하게 되었습니다.
프로그램은 총 4개의 저장소를 기반으로 단축키(F1 ~ F8)을 이용하여 사용하도록 구현하였습니다.
여기서 문제는 자바는 플랫폼에 종속적이기 때문에(해당 프로젝트를 하면서 이해가 됐다는...) 사용자의 단축키(키보드) 입력을 받을수가 없다는 점이었습니다.
하지만 구글링(?) 결과, 해당 이슈는 자바에서 다른 언어를 사용할 수 있도록 지원해주는 JNI(Java Native Interface)를 사용하여 C++의 키(입력) 감지 함수를 기반으로 작성된 KeyboardHook-win.dll 파일을 로드하여 구현하면 된다는 것을 알게되었고.. 열심히 따라 하다보니 해결되었습니다.
아래 개발환경 및 프로젝트 파일 및 패키지구조, 실행파일을 첨부하오니 참고하여 공부하시기 바랍니다.
개발환경
개발언어 : JAVA, C++
라이브러리 : JDK(Clipboard, Robot), KeyboardHook-win.dll
개발도구 : Eclipse(Kepler)
프로젝트 파일
multicopy_myeonguni.zip패키지구조
실행파일
multicopy.exe* 보완해야 할 사항
해당 단축키(F1~F8)가 이미 현재 작업하고 있는 어플리케이션에서 단축키로 등록되어 있을 경우 겹치는 현상
* 해결방안
multicopy 프로그램이 서비스에 동작 중이면 F1~F8키에 대한 감지를 해당 프로세서에서 가장 먼저하여 다른 어플리케이션에서 중복 감지되는 현상이 안 일어나도록(제 생각은 이러하지만 해당 부분은 C++단에서 작업해야 할 사항 같아서 공부가 부족하여 아직 시도해보지 않았습니다.)
'삶의 늪에 들어 가기 전 > 정리중(미정리)' 카테고리의 다른 글
[공개용 S/W 개발] 카카오톡 채팅봇(챗봇) (4) | 2016.09.03 |
---|---|
[참고사이트] VELOPERT.LOG - https://velopert.com/294 (0) | 2016.09.02 |
[공개용 S/W 개발] SyntaxHighlighter를 위한 코드편집기 프로그램(escape) (0) | 2016.08.31 |
[공개용 SW 개발] 네x버 맞춤법검사기 파싱 테스트 (0) | 2016.08.30 |
[Jpcap] ReadDump.java (0) | 2016.08.30 |