Как я могу отслеживать все файлы, открытые программным обеспечением? - PullRequest
2 голосов
/ 02 февраля 2012

Я хочу написать программу монитора.Он будет следить за специальным программным обеспечением.Когда это программное обеспечение открывает файлы, оно запоминает историю запуска.Поэтому я могу создать свою собственную систему «Любимый файл» или «Историю» для некоторого программного обеспечения.

, т.е. я часто использую Total Commander.Я использовал tc в качестве программы запуска.Большая часть моих документов или программ открыта в ТЦ.Но TC не имеет открытой системы истории файлов.Поэтому я планирую сделать один.

Когда файлы открываются в TC.TC является родительским процессом.Я думаю, что есть способ написать код на C #, чтобы получить все файлы, открытые TC (речь идет об отправке сообщений и отслеживании кода).TC написан на delphin, он использует управление списком подставок.C # может решить эту проблему неплохо.

Но я новичок в C #, у меня есть немного навыков AutoHockkey и Python.Я учу C # сейчас.Может кто-нибудь дать мне несколько советов по написанию кода?Основная идея в порядке, я справлюсь с графическим интерфейсом.

Ответы [ 2 ]

2 голосов
/ 02 февраля 2012

Возможно, вам не нужно писать свои собственные.Монитор процессов от sysinternals / Microsoft может контролировать файлы.А с фильтрами вы можете фильтровать по процессу.

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

0 голосов
/ 16 апреля 2012

Я также занимаюсь разработкой программного обеспечения для мониторинга детей в университетском проекте. Я нашел несколько решений для этого.

  1. Windows HOOK и перехватывать все файлы, читать запись ... и т. Д. (Сложно и сложно)
  2. почему бы просто не проверить папку MyRecentDocuments ...: P (пользователь может изменять настройки, которые имеют как плюсы, так и минусы)

Нельзя, если мы сможем использовать класс "Процесс" и что-то сделать ..: P

EDIT * ---------------- * 1011

я почти забыл ... когда я реализовывал компонент мониторинга процесса, я обнаружил, что когда пользователь дважды щелкает файл, запускается файл «dllhost.exe». :) Я думаю, ты понимаешь, что делать сейчас ... я тоже все еще работаю над этим ..

...