Dave's Visual Studio Debug VisualizersWin32, ATL, & MFC Debug Visualizers for the following structures and classes: Times: FILETIME, SYSTEMTIME, COleDateTime, CTime, CTimeSpan Miscellaneous: PROPERTYKEY, LOGFONT If you'd like to see other common structures or classes included, don't hesitate to ask by adding a new idea in the discussion area. Variables of the following types are normally displayed in raw forms by the debugger, but as you can see in the following examples, with this extension they're displayed in more useful formats. FILETIME, SYSTEMTIMEDisplays the time value interpreted as both UTC and local time, shown in your current locale format. Also displays the SYSTEMTIME form used in TIME_ZONE_INFORMATION & DYNAMIC_TIME_ZONE_INFORMATION from the GetTimeZoneInformation(ForYear) & GetDynamicTimeZoneInformation APIs. COleDateTime, CTime, CTimeSpanCOleDateTime and CTime show the same format as FILETIME and SYSTEMTIME above. PROPERTYKEYDisplays the key's canonical and display names. LOGFONT(A/W)Displays the commonly used LOGFONT structure members in an easy to interpret format. Original ProjectThis project is based on the CppCustomVisualizer in the Microsoft Concord Extensibility Sample. The original visualizer only handles the FILETIME type, and only shows a local format of it. Natvis documentation can be found on docs.microsoft.com. Thanks to Gregg Miskelly for pointing me in the right direction in getting this project to build for Visual Studio 2022. Notes on additions to the original exampledll folder_EntryPoint.cppDefined new GUIDs for the type visualizers & calls the appropriate converter when the matching GUID is passed (from the debugger). FileAndSystemTimeViz.cpp/.hConverter for FILETIME & SYSTEMTIME -> String PropertyKeyViz.cpp/.hConverter for PROPERTYKEY -> String FontInfoViz.cpp/.hConverter for LOGFONT(A/W) -> String TargetApp folderRevised application to illustrate the types handled by this extension. |