# Acknowledgements

Thanks to the following who have contributed to this project:

* _**Guillermo Fazzolari**_ for the ug fix in v2.0.1.

* _**Laurent Pierre**_ supplied Many `PRODUCT_*` constants and suggested the _GetProductInfo_ API code used in v3.0 and later.

* _**Rich Habedank**_ for the bug fix in `r228` and testing of bug fixes reported as issues [#31](https://sourceforge.net/p/ddablib/tickets/31/) and [#33](https://sourceforge.net/p/ddablib/tickets/33/).

The project also draws on the work of:

* _**Achim Kalwa**_ who translated the `versionhelpers.h` header into Pascal. Some of the _IsReallyWindowsXXXXOrGreater_ methods of _TPJOSInfo_ and the _TestWindowsVersion_ routine code are based closely on his work.

* _**Brendan Grant**_ for his ideas presented in the 2007 Code Project article "[Determining the specific edition of Windows for now and in the future](http://bit.ly/1mDKTu3)".

* _**Kendall Sullivan**_ for the code on which _TPJComputerInfo.IsAdmin_ is based. See the Embarcadero article "[How to detect if the current user is logged in administrator](http://edn.embarcadero.com/article/26752)".

* _**norgepaul**_ for the code on which _TPJComputerInfo.IsUACActive_ is based. See his answer to the Stack Overflow question "[Delphi Executing command line command](http://tinyurl.com/avlztmg)".
