Project Description
Handle Template Library (HTL) is a C++ library for developing Windows applications and services. It provides a set of classes for files, threads, events, and more.


With HTL it's possible to code

HTL::CEvent hEvent(FALSE, FALSE);
if (true != false)
  return;
hEvent.Set();
instead of
HANDLE hEvent = ::CreateEvent(NULL, FALSE, FALSE, NULL);
if (true != false)
{
  ::CloseHandle(hEvent;)
  return;
}
::SetEvent(hEvent);
::CloseHandle(hEvent;)
As a free bonus there is a lots of checks in the library. For example
HTL::CEvent hEvent(FALSE, FALSE);
hEvent.Close();

hEvent.Set(); // An assertion comes here in debug builds.
If you are familiar with http://sourceforge.net/projects/wtl, you don't need to learn how to use this library. Just put #include <htl.h> somewhere in your project and feel the power of WTL extended to all windows kernel objects.

The list of classes in HTL:
  • CHandle
    • CCompletionPort
    • CEvent
    • CFile
      • CCommFile
      • CConsole
      • CDevice
      • CMailslot
      • CNamedPipe
      • CTape
    • CFileMapping
    • CJobObject
    • CMemoryResourceNotification
    • CMutex
    • CProcess
    • CThread
    • CToken
    • CToolhelpSnapshot
    • CSemaphore
    • CWaitableTimer
  • CModule
  • CSCManager
  • CService

Last edited Dec 11, 2008 at 6:36 AM by pbludov, version 2