> no, you can also call ntdll (or even syscalls although those aren't stable), there's plenty of documentation on the internet
I mean officially. Yes, you can find some on the internet, but nothing on the official MSDN.
> but also why would you, not much point except for very niche functionality
Exactly. Using system DLL API is backward and forward compatible, and just as standardized and well-documented as the POSIX API. I see no problem relying on it.
(Sidenote: as a bonus, MSDN is surprisingly good, understandable, well organized, lots of examples. I rarely say this, but well done MS, that's how a dev doc should be.)
I still don't get it, what's wrong with using the user32 and kernel32 APIs? It's stable, well-documented, and is the official API on Windows. So why not use it?
Yeah, but the link talks about `ZwMapViewOfSection`. From that page:
> For calls from kernel-mode drivers, the NtXxx and ZwXxx versions of a Windows Native System Services routine can behave differently in the way that they handle and interpret input parameters.
How "differently" exactly? That's undocumented. And lots of other small (but very important) details are undocumented as well.
I mean officially. Yes, you can find some on the internet, but nothing on the official MSDN.
> but also why would you, not much point except for very niche functionality
Exactly. Using system DLL API is backward and forward compatible, and just as standardized and well-documented as the POSIX API. I see no problem relying on it.
(Sidenote: as a bonus, MSDN is surprisingly good, understandable, well organized, lots of examples. I rarely say this, but well done MS, that's how a dev doc should be.)