
Welcome to CWaitableTimer, an MFC
class to support access to the Win32 APIs dealing with waitable timers which
were introduced in NT 4 and is also available in Windows 98 and later.
Features
- Simple and clean C++
interface.
- The code is Unicode enabled
and build configurations are provided.
- Even though waitable timers
are not available on Windows 95 or NT 3.x, the code will do the right thing
on these operating systems without causing the OS loader to cause your
program to fail to load, with the error message "Call to function not
defined... ".
The enclosed zip file contains the CWaitableTimer source code and a simple test program which exercises
all of the class methods.
Copyright
- You are allowed to include the source code in
any product (commercial, shareware, freeware or otherwise) when your product
is released in binary form.
- You are allowed to modify the source code in
any way you want except you cannot modify the copyright details at the top
of each module.
- If you want to distribute source code with
your application, then you are only allowed to distribute versions released
by the author. This is to maintain a single distribution point for the
source code.
Updates
V1.0 (8
August 2000)
8 November 2002
- Removed some unnecessary comments in the module
- Updated copyright details in the module
V1.01 (18 February 2004)
- Completion routine can now be passed an LPVOID
parameter just like the SDK equivalent. Thanks to Erenst F. Wepener for
suggesting this addition.
- Minor updates to the code to allow the code to compile
on VC 5 without the requirement for the Platform SDK to be installed.
v1.02 (26 June 2006)
- Updated the documentation to use the same style as the web site.
- Updated copyright details.
- Removed various defines in code which were taken from the Platform SDK. This
does mean that the code now requires the Platform SDK if compiled using VC
6.
- Optimized CWaitableTimer constructor code.
- Combined the functionality of the _WAITABLE_TIMER_DATA class into the
main CWaitableTimer class.
- Code now uses new C++ style casts rather than old style C casts where
necessary.
- Reviewed all TRACE statements for correctness
v1.03 (1 June 2008)
- Code now compiles cleanly using Code Analysis (/analyze)
- The code has now been updated to support VC 2005 or later only.
- Updated the sample app to clean compile on VC 2008