Gurusamy Sarathy > libwin32-0.191 > Win32::ChangeNotify

Download:
libwin32-0.191.zip

Dependencies

Annotate this POD

Related Modules

File::Tail
File::Find
SGI::FAM
Win32::IPC
Tie::File
Win32::API
Win32::Clipboard
Linux::Inotify
Data::Dumper
Win32::Semaphore
more...
By perlmonks.org

CPAN RT

New  9
Open  0
View/Report Bugs
Module Version: 1.02   Source  

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.

Methods

$notify = Win32::ChangeNotify->new($path, $subtree, $filter)

Constructor for a new ChangeNotification object. $path is the directory to monitor. If $subtree is true, then all directories under $path will be monitored. $filter indicates what events should trigger a notification. It should be a string containing any of the following flags (separated by whitespace and/or |).

   ATTRIBUTES   Any attribute change
   DIR_NAME     Any directory name change
   FILE_NAME    Any file name change (creating/deleting/renaming)
   LAST_WRITE   Any change to a file's last write time
   SECURITY     Any security descriptor change
   SIZE         Any change in a file's size

($filter can also be an integer composed from the FILE_NOTIFY_CHANGE_* constants.)

$notify->close

Shut down monitoring. You could just undef $notify instead (but close works even if there are other copies of the object). This happens automatically when your program exits.

$notify->reset

Resets the ChangeNotification object after a change has been detected. The object will become signalled again after the next change. (It is OK to call this immediately after new, but it is not required.)

$notify->wait

See "Win32::IPC". Remember to call reset afterwards if you want to continue monitoring.

Deprecated Functions and Methods

Win32::ChangeNotify still supports the ActiveWare syntax, but its use is deprecated.

FindFirst($Obj,$PathName,$WatchSubTree,$Filter)

Use

  $Obj = Win32::ChangeNotify->new($PathName,$WatchSubTree,$Filter)

instead.

$obj->FindNext()

Use $obj->reset instead.

$obj->Close()

Use $obj->close instead.

AUTHOR ^

Christopher J. Madsen <chris_madsen@geocities.com>

Loosely based on the original module by ActiveWare Internet Corp., http://www.ActiveWare.com

syntax highlighting: