Not so long time ago I have published short article about reading Windows OS version. I have got lot of e-mails asking me for source code. In fact, there is nothing hard to do what I described but after describing it lot of times I decided to create few units with read OS version functions. There are three units: for Delphi, for C# and for C++. You can download it on GitHub I use this method in my Wireless Communication Library and it works great on all supported platforms in any possible situation (at least for now). Should you have any question please contact me by mike@btframework.com
It's all about my hobby and sometimes about work.