Debugging fastfat RRS feed

  • Question

  • I'm trying to use fastfat in order to verify my understanding of a file system driver. fastfat is part of "Windows Driver Kit (WDK) 8.0".

    I'm using Windows 7 as my host and as my target and I'm connected via a serial cable. I have added a package to the project and added fastfat.sys to the Driver Files folder of the package. Then I re-built the entire solution. Then at the target I added a FAT32 virtual drive (I'm using VmWare for the target Windows 7).

    Before starting my debug session I did not access Disk Manager because I figured that would bring in the  current fastfat.sys but I need to use  the one on my host via the VS debugger.

    Then I set some breakpoints in my source (at DriverEntry and at some functions that should get accessed). Then started the debug using F5. I did get a message saying it had connected. So I think that means it loaded my fastfat.sys.

    Next I went to the target and brought up Disk Manger then formatted the FAT drive. Then I created a folder and a file and edited the file.

    But I didn't hit a breakpoint and didn't see any messages using DbgView by Sysinternals.

    I suspect I am missing some concept that is basic to this ... maybe that I have to delete fastfat.sys first from the target (but I tried that during an ealier try and the system won't let me ... even though I log in as administrator).

    So now I'm stuck. Does anyone have any suggestions?

    Wednesday, August 21, 2013 3:26 PM

All replies

  • I am not a user of VS debugging for kernel drivers, so some of this is speculation.  Normally, a connection message means that the host system with the debugger and the target system are communicating, it does not indicate that files are being updated.  On debugging this, did you restart your system?  Fastfat once it is loaded will not be replaced by your version.   Second, you might look at Windbg and using .kdfiles to map your version over the systems version.

    Don Burn Windows Filesystem and Driver Consulting Website: Blog:

    Wednesday, August 21, 2013 3:32 PM
  • use the lm command and !lmi on the binary name to see if your driver has been loaded.  in general it is a bit difficult to replace in box binaries, my suggestion would be to copy over the file in the target system's system32\drivers directory as myfastfast.sys and then change the ImagePage value (or add it if not present) for the fastfat service to point to your driver image

    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Wednesday, August 21, 2013 5:09 PM
  • thanks, I'll give that a shot.
    Wednesday, August 21, 2013 5:19 PM