CrystalDiskInfo is one of the most famous disk health monitoring tools in the world. It is free and open source, and is still actively maintained.
This project aims at providing a mordern appearance for DiskInfo. The new design follow the guide of Fluent Design Systemwith flexibleadapting layoutand charming visual design.
DiskInfo
\libs
DiskInfoLib --- C++/WinRT ports of the above DiskInfo project, to be consumed directly to UI layer (developing).
DiskInfoTest --- a library for testing DiskInfoLib.
MockDiskInfo --- Fake DiskInfoLib reference that provide sample data for UI layer test.
DiskInfo --- C#/WinUI 3 project that provide the UI layer of DiskInfo.
The DiskInfoLib
is a C++/WinRT project transformed to be able to allowed to call Win32 APIs.
It's basically using Visual Studio's Windows Runtime Component
project template, but with additional macros defined and additional library paths added.
In order to be consumed by the C# project (.NET6),
PropertyGroup
tag in the csproj
file.<PropertyGroup>
<CsWinRTIncludes>DiskInfoLibWinRT</CsWinRTIncludes>
<CsWinRTGeneratedFilesDir>$(OutDir)</CsWinRTGeneratedFilesDir>
</PropertyGroup>
Visual Studio 2022
C++ Desktop Development
Universal Windows Development
.NET Desktop Development
Windows SDK 22621
C++ ATL for latest v143 build tools (x86 & x64)
C++ MFC for latest v143 build tools (x86 & x64)