none
Перехват копирования/перемещения файлов в Windows (c#, WPF) RRS feed

  • Общие обсуждения

  • Здравствуйте.

    Суть в следующем: программа должна перехватывать события Windows, такие как копирование и перемещение файлов (и по Ctrl+C/X -> Ctrl+V, так и при перетаскивании мышью). (Например: копирую все из папка А в папку Б. Программа просмотрела все файлы, показала мне, что в папке А всего 5 элементов, я нажал "Ну, ОК!" и программа продолжила копирование).

    Заранее благодарю.

    P.S.

    С помощью FileSystemWatcher удалость частично решить задачу, но проблема вот в чем:

    как отслеживать только копирование/перемещение файлов и папок из/в каталоге и создание/удаление!?

    27 сентября 2014 г. 18:04

Все ответы

  • В общем с горем по полам добился при помощи FileSystemWatcher отслеживания любых изменений файлов и папок в конкретном каталоге, но возник ла другая проблема:

    1) отслеживание происходит при предварительном запуске приложения

    2) отслеживается только конкретно указанный каталог

    ну и самое печальное:

    3) не отслеживаются действия в подкаталогах!!!

    Как справиться в первую очередь с пунктом 3 !?

    27 сентября 2014 г. 18:30
  • Уважаемый пользователь, лучше выложить решение проблемы, чем удалять топик. Оно может быть полезно другим, в будущем. Спасибо.

    Сделаем содержимое сообщества лучше, вместе!

    28 сентября 2014 г. 9:05
    Модератор
  • я ничего не удаляю. проблема по прежнему актуальна
    28 сентября 2014 г. 9:31
  • Можете попробовать с помощью user32.dll

    int iHandle = Common.NativeWin32.FindWindow(null, "Заголовок окна");
    Common.NativeWin32.SetWindowPos(new IntPtr(iHandle), Common.NativeWin32.HWND.Top, 0, 0, 0, 0, Common.NativeWin32.SetWindowPosFlags.AsynchronousWindowPosition);

    Не знаю как делать здесь спойлер просто кода много. Код для использования этой dll можете взять http://msnet-developer.blogspot.ru/2013/08/c-windows.html

    1 октября 2014 г. 6:58
  • Как это вообще может мне помочь?
    1 ноября 2014 г. 5:57