Category Archives: C++
Enabling uiAccess in Visual Studio C++ Projects
After spending too much time fiddling with my project’s Manifest Tool settings, trying to import an “Additional Manifest File”, I realized the solution was actually really simple. Under Project Settings | Linker | Manifest File, there is a simple dropdown … Continue reading
What Exactly Are ATL’s BEGIN_COM_MAP, END_COM_MAP, and COM_INTERFACE_ENTRY Macros?
There are many places where ATL’s COM_MAP macros are documented, but I haven’t seen it plainly stated what they actually mean. Simply put, BEGIN_COM_MAP implements _InternalQueryInterface. COM_INTERFACE_ENTRY indicates that your class supports the specified interface. END_COM_MAP finishes the _InternalQueryInterface implementation. … Continue reading
Alternate Data Streams (Metadata) on Files in NTFS
Introduction Alternate Data Streams (ADS) allow arbitrary metadata to be associated with files and directories on Windows NTFS. Alternate data streams are the Windows implementation of forks. The apparent size of the file will be unchanged, and most applications and … Continue reading
Queue Implemented Using Stacks
Here are two solutions for using stacks to emulate a queue. The first always keeps one or both stacks empty, shifts the set of values back and forth as the caller switches between enqueuing and dequeueing. The second maintains an … Continue reading