Windows XP/7 copy FILE hook

There's a possibility to hook folder modification operations(copy, delete, rename and so forth), but unfortunately I need hook those operations applied to files. Any thoughts?


Delphi XE2, Windows XP/7/2008



I know two options

1) You can hook the WinAPi functions like CopyFile and CopyFileEx creating a system wide hook, wrtting the hook yourself or using a API hook library like madCodeHook or Deviare API hook (I've used both libraries with great results.)

2) Writting a File System Filter Driver.


  • How do I install the Chromium package in Delphi?
  • how to use InputBox in c++builder with multiple values
  • “Unrecognized character \\xE2” in a Hello World program
  • Opening pipe connection to a file descriptor in C#
  • Identify Windows Editions
  • _CrtDumpMemoryLeaks( ) == 1 on first line of code?
  • Load DLL Library
  • Addresses of Delphi and C++ WinAPI functions differ when they shouldn't
  • How can I get the “Edit Component's Name” window to show when I place a component?
  • How to get length of a dynamic array in Delphi? [closed]
  • Playing Video in JavaFX8
  • Fatal error on Windows XP when compiled with XP Targeting in Visual Studio 2015
  • Delphi Chromium Embedded - Clear browser cache
  • Interpolation method that does not add unnecessary extremums
  • Merge Module leaving files during uninstall
  • Is there a Windows socket API call / option to “block” a range of ports à la SO_EXCLUSIVEADDRUSE
  • Delphi: Where is the shortcut that started the application? [duplicate]
  • How to skip require in ruby?
  • HttpURLConnection.getOutputStream() takes 20 seconds. Why?
  • Saving image to sd with current date and time in name doesn't work
  • Yii2: Config params vs. const/define
  • Paperclip, set path outside of rails root folder
  • Deleting and Updating values from a cusrsor adapter
  • Sony Xperia Z Tablet not found by adb
  • How would I use PHP exceptions to define a redirect?
  • Modifying destination and filename of gulp-svg-sprite
  • Javascript convert timezone issue
  • 'TypeError' while using NSGA2 to solve Multi-objective prob. from pyopt-sparse in OpenMDAO
  • Why is the timeout on a windows udp receive socket always 500ms longer than set by SO_RCVTIMEO?
  • 0x202A in filename: Why?
  • jqPlot EnhancedLegendRenderer plugin does not toggle series for Pie charts
  • How do I rollback to a specific git commit
  • Is there a mandatory requirement to switch app.yaml?
  • Proper folder structure for lots of source files
  • NSLayoutConstraint that would pin a view to the bottom edge of a superview
  • Load html files in TinyMce
  • How do you join a server to an Active Directory (domain)?
  • Append folder name and increment by 1 using batch script
  • Busy indicator not showing up in wpf window [duplicate]
  • Converting MP3 duration time