게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[질문][JAVA][Window][비전공자]실행중인 프로세스의 이름 얻기
게시물ID : programmer_14026짧은주소 복사하기
작성자 : 코드입력
추천 : 0
조회수 : 1074회
댓글수 : 15개
등록시간 : 2015/10/22 14:15:07
옵션
  • 베스트금지
  • 본인삭제금지
안녕하세요.
취미(?)삼아서 프로그래밍을 하고 있는 비전공자 입니다 ㅠㅠ (시뮬레이션 모형을 만들고 있는 비전공 연구원 입니다 ㅠㅠㅠㅠㅠㅠㅠ)
 
 
제가 컴퓨터 실에서 학생들 시험감독을 하고 있다보면,
학생들이 이메일로 자기 파일을 자꾸 공유하더라고요...
학생수는 50명이 넘는데.. 동체시력에 한계가 있어서...
완전 통제하기가 어렵더라고요..
 
해서!!!!!!
학생들이 이메일 웹사이트에 들어가게되면!!!
화면이 빨갛게 변하고 큰 소리가 나도록!!! 저에게 조그마한 신호가 발신되는 프로그램을 제작하고있습니다.
 
 
컴퓨터에서 특정 프로토콜로 나가는 정보를 활용해서, 즉 outlook 등으로 메일을 교환하는 행위를 잡는건 가능할것 같습니다.
근데, 웹 브라우져로 네이버메일 이나 다음메일을 쓰는 경우가 문제가 되더라고요.
 
해서,
process 목록을 실시간으로 확인하면서 웹브라우져가 켜졌는지 확인하고,
해당 웹브라우져의 title에 "메일"이라는 string이 나타나면 저에게 신호를 주는 프로시져를 만들고 있습니다.
 
처음엔, tasklist 커맨드 명령어로 검사하려고 했으나
tasklist에서는 웹브라우져의 title이 안나오더라고요.
 
해서,
JNI 를 활용하여 프로세스 리스트와 각 프로세스의 윈도우 title을 가져오는 프로시져를 만들었습니다.
 
근데, 요기서 문제가 발생합니다.
결과가 이렇더라고요...
?????????? - ?? - Internet Explorer
?????????? - ?? - Internet Explorer
???????? - ????????? - Internet Explorer
::: ?????????б??? ???? ???? ??????? ::: - Internet Explorer
What is the character encoding of String in Java? - Stack Overflow - Internet Explorer
jna/NativeTest.java at master ?? java-native-access/jna ?? GitHub - Internet Explorer
How to Get a List of Current Open Processes with Java? - Internet Explorer
Listing Java Process from Java (Vaibhav's Blog Space) - Internet Explorer
jna/jna-platform.jar at master ?? java-native-access/jna ?? GitHub - Internet Explorer
???ε? ???? - Internet Explorer
jna/jna-platform.jar at master ?? java-native-access/jna ?? GitHub - Internet Explorer
Java Native Access - Wikipedia, the free encyclopedia - Internet Explorer
where is the jna - Google ??? - Internet Explorer
Java SE - Downloads | Oracle Technology Network | Oracle - Internet Explorer
java "native.tostring" foreign language - Google ??? - Internet Explorer
CDM ????? ???????????α???? ?????? ???? ???? - Google ???? - Internet Explorer
결과적으로 제가 겪고 있는 그리고 해결책을 찾고있는 문제는..
"한글이 깨져요" 입니다.. ㅠㅠ
 
구글로 이것저것 찾아보고 있는데..
한글이 깨지는 문제를 해결하는 방법을 찾기가 어렵더라고요...ㅠㅠ (다들 외국인이라 관심이 없나바영)
 
혹시 도움을 주실 수 있나요?
    // hWnd 는 pointer입니다.
    byte[] windowText = new byte[512];
    user32.GetWindowTextA(hWnd, windowText, 512);
    String wText = Native.toString(windowText);
    System.out.println(Native.toString(windowText));
 
입니다.. 요기서 뭐 인코딩 같은걸 해결해 주면 될것 같은데.. ㅠㅠㅠ
도저히 모르겠어요 ㅠㅠ
 
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호