you're looking for the
Win32::ChangeNotify module. from the doc:
NAME
Win32::ChangeNotify - Monitor events related to files and directories
--------------------------------------------------------------------------------
SYNOPSIS
require Win32::ChangeNotify;
$notify = Win32::ChangeNotify->new($Path,$WatchSubTree,$Events);
$notify->wait or warn "Something failed: $!\n";
# There has been a change.
--------------------------------------------------------------------------------
DESCRIPTION
This module allows the user to use a Win32 change notification event object from
Perl. This allows the Perl program to monitor events relating to files and
directory trees.
The wait method and wait_all & wait_any functions are inherited from the
"Win32::IPC" module.
~Particle *accelerates*