Actually, I more or less followed the code explanations ... except it was a bit too fast.
~20 years ago I wrote a turbofan maintenance application where we made sure that only one instance of it could be run at a time. I also tried to convince them that the program should also just lock the laptop and not allow switching to any other task, but no go on that. There was big concern at the time that because Windows was "non-deterministic" that the user would pop over and play solitaire or something while a data download was going on and something would get corrupted. I had to adapt CFile into a child class with all sorts of protections, so if all the data wasn't perfect (checksums, etc) then the file did
not get written to the disk. So it all had to go to a huge memory buffer first!
Like your Task Manager, this application was basically all tab pages for display of different data blocks. I created a CPage child class that was the base class for all my different tabs with all the shared operations. The data was all handled in separate non-visual classes, so most of the event handlers only had one or two lines of code