3 ms·
Totally agree. I worked for a while with pure Win32. Once you get the hang of it it’s quite consistent and pretty well thought out. Also agree about the docume
by maxxxxx 8y ago
Totally agree. I worked for a while with pure Win32. Once you get the hang of it it’s quite consistent and pretty well thought out. Also agree about the documentation. Seems MS is determined to make it worse every year, break more links and provide less useful information. The old MSDN CDs were a piece of beauty.
- scarface74 8y agoConsistency? Let’s start with strings... - the standard null terminated single byte char C string - the double wide null terminated C string required for dome frameworks - especially Windows CE - the COM BSTR where the first two bytes are the length - the ATL bstr_t - CString that isn’t a null terminated C string - of course the C++ string class. I’m not sure if this is ever used by the Win32 APIs I’m sure I’m missing one.
- cpeterso 8y agoTCHAR probably counts because, even though it's just a typedef for char or wchar_t, it has its own t-prefixed APIs and mental overhead of having to write code that can work with either character size.
- Impossible 8y agoIf you count various flavors of UWP (C++/CX, C++/WinRT, WRL) you can add std::wstring and Platform::String^
- asveikau 8y agoDon't forget HSTRING, which Platform::String^ is built on. They added those two in Windows 8 because there was no one standard string type. (Not joking.)
- xpaulbettsx 8y agoUNICODE_STRING too - https://msdn.microsoft.com/en-us/windows/desktop/ff564879 https://msdn.microsoft.com/en-us/windows/desktop/ff564879
- scarface74 8y agoSo there is also the OEM_STRING and the ANSI_STRING