C #: взять контроль над передачей файлов * - PullRequest
0 голосов
/ 07 мая 2011

Мне бы хотелось иметь программу, которая работает в фоновом режиме, прослушивает любые передачи файлов, а затем отменяет механизм передачи файлов в проводнике и запускает его самостоятельно.

Как мне это сделать? Есть ли какая-нибудь dll, которую я могу вывести?

Почему?

  • Для фильтрации файлов определенных типов по пути. (автоматически или с подсказкой.)
  • Опция двойного перевода «нет ко всем».
  • Logging.
  • Чтобы не нужно было запускать программу каждый раз, когда я хочу передать файлы.
  • Чтобы лучше понять, что происходит под капотом.
  • Чтобы не полагаться на сторонние программы.
  • Любые дополнительные функции, о которых я думаю в будущем.

* Под передачей файлов я имею в виду перемещение / копирование файлов / папок путем перетаскивания, но меня интересует только передача файлов с диска на диск, а не из Интернета.

Ответы [ 2 ]

5 голосов
/ 07 мая 2011

Определить «передачу файлов».

Вы хотите прослушать запросы ftp, http? Проводник тоже копирует? Только локально или в сети?

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

См. Полное идиотское руководство по написанию расширений оболочки , чтобы узнать, как начать.

См. Также http://msdn.microsoft.com/en-us/library/cc144063(v=vs.85).aspx

3 голосов
/ 07 мая 2011

Перед тем, как я начну: Это закончится плохо, но тем не менее:

Для Vista / 7:

Вам нужно зацепить ( Сцепление )

К CoCreateInstance из IFileOperation , а затем изменить то, что вам нужно оттуда.

Это не будет работать на XP, однако, и, вероятно, настолько хрупким, что будетработать на некоторых компьютерах, а не на других, потому что существуют миллионы способов сделать то же самое в Windows с точки зрения API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...