LP is actually “Long Pointer”, which means 32 bits. Why is that called a long pointer? Because that’s what a long pointer was on win16. Same reason a DWORD (double word) is also 32 bits, because a word was 16 bits.
I haven’t really done much with coding 64 bit Windows applications so I don’t if it’s the same, but Windows 16 bit roots was very obvious in win32.
I haven’t done much programming that makes use of the win32 types, but just from tech support and sysadmin type stuff I can confirm that DWORDs are still 32 bits. See them a lot in the Registry.
Given Window’s (sometimes questionable) attempts to maintain backwards compatibility, and the fact that a lot of the OS functionality and sysadmin tools are, at best, kludge built up in layers over decades on top of the old tools, I would strongly suspect that the win32 types are still the exact same size-wise despite the now 64-bit underlying architecture.
I mean Szczecin and Bydgoszcz are fairly well known place names, and chuj is a well known word for other reasons, so those are the easiest apart from DWORD which I think I’ve seen in the Windows registry.
I would have picked the same except for HGDIOBJ, the OBJ screams “object” and it wouldn’t be very pronounceable in Polish orthography, not even by the standards of Polish. Have not looked any up though.
This looks fun. I don’t know any Polish but I’ve seen it around, and I used to be kinda fluent in win32 years ago. I’ll have a go.
spoiler
damn, you’re good.
Identifying the windows string types is fun. The letters are supposed to have a meaning. Without looking them up, my guess is:
LP_ - Length Prepended
C_STR - C string / null-terminated
WSTR - “Wide” string / utf-16
TSTR - I have no idea
LP is actually “Long Pointer”, which means 32 bits. Why is that called a long pointer? Because that’s what a long pointer was on win16. Same reason a DWORD (double word) is also 32 bits, because a word was 16 bits.
I haven’t really done much with coding 64 bit Windows applications so I don’t if it’s the same, but Windows 16 bit roots was very obvious in win32.
Thanks for correcting me. Considering a
longis also 32 bits, a “Long Pointer” being 32 bits makes sense.I haven’t done much programming that makes use of the win32 types, but just from tech support and sysadmin type stuff I can confirm that DWORDs are still 32 bits. See them a lot in the Registry.
Given Window’s (sometimes questionable) attempts to maintain backwards compatibility, and the fact that a lot of the OS functionality and sysadmin tools are, at best, kludge built up in layers over decades on top of the old tools, I would strongly suspect that the win32 types are still the exact same size-wise despite the now 64-bit underlying architecture.
I mean Szczecin and Bydgoszcz are fairly well known place names, and chuj is a well known word for other reasons, so those are the easiest apart from DWORD which I think I’ve seen in the Windows registry.
I would have picked the same except for HGDIOBJ, the OBJ screams “object” and it wouldn’t be very pronounceable in Polish orthography, not even by the standards of Polish. Have not looked any up though.
DWORD is as obvious to me as all the ones containing unicode strings.
The H in HGDIOBJ could mean “handle to” and if I’m remembering right, GDI is a Windows graphics drawing interface.