WinStd Additional templates and function helpers for Microsoft Windows using Standard C++ classes

Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 1 2 3]

▼N winstd |
C actctx_activator | Activates given activation context in constructor and deactivates it in destructor
C addrinfo | SID wrapper class
C basic_string_guid | Base template class to support converting GUID to string
C basic_string_msg | Base template class to support string formatting using `FormatMessage()` style templates
C basic_string_printf | Base template class to support string formatting using `printf()` style templates
C bstr | BSTR string wrapper
C cert_chain_context | PCCERT_CHAIN_CONTEXT wrapper class
C cert_context | PCCERT_CONTEXT wrapper class
C cert_store | HCERTSTORE wrapper class
C com_initializer | Context scope automatic COM (un)initialization
C com_obj | COM object wrapper template
C com_runtime_error | COM runtime error
C console_ctrl_handler | Console control handler stack management
C CoTaskMemFree_delete | Deleter for unique_ptr using CoTaskMemFree
C CredFree_delete | Deleter for unique_ptr using CredFree
C CredFree_delete< _Ty[]> | Deleter for unique_ptr to array of unknown size using CredFree
C critical_section | Critical section wrapper
C crypt_hash | HCRYPTHASH wrapper class
C crypt_key | HCRYPTKEY wrapper class
C crypt_prov | HCRYPTPROV wrapper class
C data_blob | DATA_BLOB wrapper class
C dc | Device context wrapper class
C dc_selector | Context scope DC object restorer
C dplhandle | Base abstract template class to support object handle keeping for objects that support handle duplication
C eap_attr | EAP_ATTRIBUTE wrapper class
C eap_method_info_array | EAP_METHOD_INFO_ARRAY wrapper class
C eap_method_prop | EAP_METHOD_PROPERTY wrapper class
C eap_packet | EapPacket wrapper class
C eap_runtime_error | EapHost runtime error
C EapHostPeerFreeEapError_delete | Deleter for unique_ptr to EAP_ERROR using EapHostPeerFreeEapError
C EapHostPeerFreeErrorMemory_delete | Deleter for unique_ptr to EAP_ERROR using EapHostPeerFreeErrorMemory
C EapHostPeerFreeMemory_delete | Deleter for unique_ptr using EapHostPeerFreeMemory
C EapHostPeerFreeRuntimeMemory_delete | Deleter for unique_ptr using EapHostPeerFreeRuntimeMemory
C event | Event handle wrapper
C event_data | EVENT_DATA_DESCRIPTOR wrapper
C event_fn_auto | Helper class to write an event on entry/exit of scope
C event_fn_auto_ret | Helper template to write an event on entry/exit of scope with one parameter (typically result)
C event_provider | ETW event provider
C event_rec | EVENT_RECORD wrapper
C event_session | ETW session
C event_trace | ETW trace
C event_trace_enabler | Helper class to enable event provider in constructor and disables it in destructor
C file | File handle wrapper
C find_file | Find-file handle wrapper
C gdi_handle | Windows HGDIOBJ wrapper class
C handle | Base abstract template class to support generic object handle keeping
C heap | Heap handle wrapper
▼C heap_allocator | HeapAlloc allocator
C rebind | A structure that enables an allocator for objects of one type to allocate storage for objects of another type
C library | Module handle wrapper
C LocalFree_delete | Deleter for unique_ptr using LocalFree
C LocalFree_delete< _Ty[]> | Deleter for unique_ptr to array of unknown size using LocalFree
C num_runtime_error | Numerical runtime error
C process | Process handle wrapper
C process_information | PROCESS_INFORMATION struct wrapper
C ref_unique_ptr | Helper class for returning pointers to std::unique_ptr
C ref_unique_ptr< _Ty[], _Dx > | Helper class for returning pointers to std::unique_ptr (specialization for arrays)
C reg_key | Registry wrapper class
▼C sanitizing_allocator | An allocator template that sanitizes each memory block before it is destroyed or reallocated
C rebind | Convert this type to sanitizing_allocator<_Other>
C sanitizing_blob | Sanitizing BLOB
C sec_buffer_desc | SecBufferDesc wrapper class
C sec_context | PCtxtHandle wrapper class
C sec_credentials | PCredHandle wrapper class
C sec_runtime_error | Security runtime error
C security_id | SID wrapper class
C setup_device_info_list | HDEVINFO wrapper class
C setup_driver_info_list_builder | Builds a list of drivers in constructor and deletes it in destructor
C string_guid | Single-byte character implementation of a class to support converting GUID to string
C user_impersonator | Lets the calling thread impersonate the security context of a logged-on user
C variant | VARIANT struct wrapper
C vmemory | Memory in virtual address space of a process handle wrapper
C win_handle | Windows HANDLE wrapper class
C win_runtime_error | Windows runtime error
C window_dc | Device context wrapper class
C wintrust | WinTrust engine wrapper class
C wlan_handle | WLAN handle wrapper
C WlanFreeMemory_delete | Deleter for unique_ptr using WlanFreeMemory
C WlanFreeMemory_delete< _Ty[]> | Deleter for unique_ptr to array of unknown size using WlanFreeMemory
C ws2_runtime_error | WinSock2 runtime error
C wstring_guid | Wide character implementation of a class to support converting GUID to string