Thanks! Will try that if adding just what we need doesn’t do the trick 🙂
There are also some comments suggesting that the long types may in fact be intended as short integers so we’ll definitely want to do an investigation to determine what they should be. Yep, std::atol would do the trick for 64-bit integers. There’s no corresponding function for 16-bit integers so we may want to see if we can set the control to a limiter if we do in fact need 16-bit integers after the investigation just to make sure we don’t get an integer overflow or out of range bug. The other option would be to first convert them to a 32-bit integer and then check to see if they are out of range for a 16-bit one. If so, we set it to the max or min allowed for the type. The limiter would be cleaner in that case, though.
Edit:
snprintf() in common/dl_str.h is almost identical to std::snprintf() in cstdio save for the fact that the former uses TCHAR * instead of char *. We may be able to swap it out for swprintf() in cwchar without issue since TCHAR is just a type-def for wchar_t. Other changes may be doable as well but that is a 1-for-1 swap down the road.
Edit 2:
Also found this doc which could be useful: https://learn.microsoft.com/en-us/windows/win32/winprog/windows-data-types
Will start adding the headers for those types as I go and will go back through later and add it to the ones I missed at some point. It’s a shame a lot of this information is hard to track down.
