2012-02-02 3 views
2

모니터 프로그램을 작성하고 싶습니다. 그것은 특별한 소프트웨어를 모니터합니다. 이 소프트웨어가 파일을 열면 실행 기록을 기억합니다. 그래서 일부 소프트웨어에 대해 "즐겨 찾는 파일"또는 "기록"시스템을 만들 수 있습니다.소프트웨어에서 여는 모든 파일을 어떻게 추적합니까?

즉 총 커맨더를 자주 사용합니다. 나는 tc를 프로그램 실행기로 사용했다. 대부분의 내 문서 또는 프로그램이 TC에 열렸습니다. 그러나 TC에는 열린 파일 기록 시스템이 없습니다. 그래서 나는 그것을 만들려고합니다.

파일이 TC에서 열렸을 때. TC는 상위 프로세스입니다. C# 코드를 작성하여 TC에서 열어 둔 모든 파일을 가져 오는 방법이 있다고 생각합니다 (메시지 전송 및 모니터 코드에 관한 것입니다). TC는 델핀으로 작성되었으며, 스탠드리스트 박스 컨트롤을 사용합니다. C#은 좋은 문제를 해결할 수 있습니다.

하지만 C#을 처음 접했을 때 Autohotkey와 Python 프로그래밍 기술이 약간 있습니다. 지금 C#을 배우고 있습니다. 누군가 코드를 작성하는 몇 가지 팁을 줄 수 있습니까? 핵심 아이디어는 괜찮습니다. GUI 작업을 처리 할 것입니다.

+0

sysinternals 도구에 소스 코드가 포함되어 있습니까? –

답변

2

직접 작성하지 않아도됩니다. sysinternals/Microsoft의 프로세스 모니터는 파일을 모니터 할 수 있습니다. 필터를 사용하면 프로세스별로 필터링 할 수 있습니다.

http://technet.microsoft.com/en-us/sysinternals/bb896645

+0

빠른 답장을 보내 주셔서 감사합니다. 일부 도구는 메시지를 모니터링 할 수 있습니다. 하지만 내 목표는 "좋아하는 파일 목록"과 같은 작은 도구를 만드는 것입니다. 내역 데이터를 수집하고 데이터를 목록 상자로 내보내는 코드를 작성합니다. TC의 "최근 열린 파일"과 같습니다. – textpattern

0

메신저는 대학 프로젝트의 자식 모니터링 소프트웨어를하고. 이렇게하기위한 몇 가지 해결책을 찾았습니다.

  1. 윈도우 HOOK 모든 FILEREAD의 write..etc을 차단 (하드 & 단지) 단지 MyRecentDocuments 폴더를 확인하지 왜
  2. 은 ... :. P (사용자가 장점과 단점을 모두 가지고 설정을 변경할 수 있습니다)

donno 우리는 "프로세스"클래스를 사용하고 뭔가를 할 수 있다면 .. : P

편집 ----------------

나는 거의 잊어

. .. 프로세스 모니터링 구성 요소를 구현할 때 사용자가 "dllhost.exe"파일을 두 번 클릭하면 실행된다는 것을 알았습니다. :) 나는 지금 무엇을해야하는지에 대한 힌트를 얻은 것 같습니다.