Определение размера логического диска в DOS-сессии под NT-выми системами

Тема в разделе "WASM.WIN32", создана пользователем Brainless, 14 фев 2006.

  1. Brainless

    Brainless New Member

    Публикаций:
    0
    Регистрация:
    14 фев 2006
    Сообщения:
    1
    Адрес:
    Russia
    Здравствуйте !



    Кто подскажет, как DOS-программа может определить размеры логического диска

    (полный объем и свободное место) в DOS-сессии NT-вых Windows (Windows XP и т.п.) ?



    В семействе Win9X чудесно работает функция 7303h int 21h, в Windows XP она

    выдает туфту. Как я понимаю, дело в кривой реализации этой функции при эмуляции

    DOS-сессии.



    Но command.com от Windows XP чудесно показывает все размеры. Возможно, для этого

    он использует недокументированный механизм вызова функций WinAPI из 16-битного кода через выполнение процессорной инструкции с недопустимым кодом (0c4h,0c4h). Упоминания об этом в Интернете встречаются, но не более того.



    Полного описания этих вызовов (форматы вызовов, что передается, что возвращается)

    так и не удалось найти.



    Так что помогите, пли-и-и-з.