Win32 Monitoring Perl Modules

This pages describes our Win32 perl modules for monitoring Windows.


The Win32::Monitoring::DLLInject module provides a mechanism allowing a Perl program to inject (self written) code into a running Windows program or a DLL. This functionality can be used for patching or instrumenting code.

Additionally, a communication channel using a Windows mailslot is set up. This channel can be used for sending information, e.g. status information or time measurements, back to the Perl application that injected the code.

As a bonus, we provide an example for a DLL implementation that allows for adding time measuring to any Win32 application without requiring further modules.


The Win32::Monitoring::Session module provides an interface to query Windows for additional session information. Most notably the exact logon time which seems to be rather difficult to get a hold of more or less portable way.

Note that windows seems to treat this kind of information as privileged. As a normal user you can only get information about your own processes and your own session. Admin will be better of in this respect.


The Win32::Monitoring::WindowPing module provides a function to check if a windows desktop window was willing to respond to user input along with a set of companion functions such that you can implement a nice window alive program without requiring further modules.


Stable releases of this module can be found at

Development releases and the latest stable release are available through

The development source code in a subversion repository is accessible through svn:// or by browsing the source (Browse Source).


All Win32::Monitoring perl modules are freely available under the  GNU General Public License (GPL 3 or later).

Extension of Win32::Monitoring modules

Win32::Monitoring modules are made available for free and as is. There is no warranty concerning their functionality. We are, however, interested in your feedback, extensions, bug fixes, etc.

If you need a feature not currently provided by the Win32::Monitoring modules and don't have the resources to extend them yourself, we can make you an offer for a project to extend them for you.

Have fun!