NT имеет в основном недокументированный API, называемый «Native API», на котором реализованы общие подсистемы (то есть API Windows, OS/2 API и POSIX (обычно называемые «подсистемы Interix»).Есть ли обновленные книги или веб-сайты в Windows NT Native API?
Несколько книг и веб-сайты существуют, которые пытаются документировать этот API:
- Некоторые из этих функций описаны в Windows Driver Kit
- Undocumented Windows 2000 Secrets, A Programmers Cookbook, by Sven V. Schreiber
- Undocumented NTernals
- Windows NT/2000 Native API Reference, by Gary Nebbett
- NirSoft's Windows Vista Kernel Structures
К сожалению, ни одна из книг или веб-сайтов я не могу попытаться коснуться 64-разрядных версий Windows (за исключением WDK, но WDK ограничен ...). API называет себя одинаковым - большая проблема связана с самими определениями структуры. А именно: значение указателя и DWORD одинакового размера на 32-битных платформах, но разные на платформах x64. Таким образом, бит «неизвестного дополнения» структур, которые часто определяются как массив DWORD, ошибочны в окнах x64, и результатом является полный мусор.
Я вручную работаю над этими вещами, добавляя дополнительное дополнение в ручную для каждого вызова API, но это становится очень расстраивающим, и было бы неплохо иметь ресурс, который просто документировал эти вещи, чтобы они 'd правильно использовать указатели вместо DWORD, где это необходимо, так что определение одной структуры может служить как для 32-битной, так и для 64-битной Windows.
Существует ли такой ресурс?
Я ничего не видел на x64, если честно, но вам может повезти проверить, получил ли ntlib 64-битное обновление, вы также можете проверить openrce.org, посмотреть, есть ли у них что-нибудь. Иначе вам придется ждать 64-битной утечки источника Windows: p – Necrolis