you are viewing a single comment's thread
view the rest of the comments
[–] [S] 34 points 5 months ago (5 children)
  • [–] 16 points 5 months ago* (4 children)

    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

  • source
  • parent
  • hideshow 4 child comments
  • [–] 10 points 5 months ago* (2 children)

    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.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 3 points 4 months ago

    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.

  • source
  • parent