NtQueryObject je nativní funkce, která umožňuje aplikacím zjišťovat různé informace z datových struktur správce objektů. Využijete ji zejména v případě, kdy potřebujete z neznámého handle zjistit informace o objektu, ke kterému patří. Rutina je podrobněji popsána v šesté kapitole knihy.
Ukázkový projekt stejného jména ukazuje většinu možností této nativní funkce. Zároveň také obsahuje kód, který dokáze zjistit seznam handle patřících určitému procesu. Jedná se o konzolovou aplikace, která na základě argumentů příkazové řádky provede příslušnou operaci. Syntaxe je následující:
Příkaz –list-types instruuje aplikaci, aby vypsala různé, převážně statistické informace o všech druzích objektů exekutivy. Příkaz –list-handles slouží k získání seznamu handle zadaného procesu. A konečně příkaz na třetím řádku slouží k zjištění informací o objektu, na který odkazuje zadané handle v daném procesu.
Upozornění: Aplikace žádným způsobem neřeší možný deadlock, který se může objevit při pokusu pomocí funkce NtQueryObject zjistit jméno některých objektů pojmenovaných rour, které jsou reprezentované objektem typu File.
Systém | Verze kernelu | |
Windows XP 32bit | * | |
Windows XP 64bit | * | |
Windows Server 2003 R2 32bit | * | |
Windows Server 2003 R2 64bit | * | |
Windows Vista 32bit | * | |
Windows Vista 64bit | * | |
Windows 7 32bit | * | |
Windows 7 64bit | * |