чем заменить IOCTL_DISK_GET_LENGTH_INFO на w2k сервер?

Тема в разделе "WASM.BEGINNERS", создана пользователем BORYAK, 22 окт 2007.

  1. BORYAK

    BORYAK Боран

    Публикаций:
    0
    Регистрация:
    22 апр 2005
    Сообщения:
    33
    Адрес:
    Kazakhstan
    собственно сабж
     
  2. MHajduk

    MHajduk New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2006
    Сообщения:
    123
    Взято из файла 'ntdddisk.h':
    Код (Text):
    1. #define IOCTL_DISK_GET_LENGTH_INFO \
    2.   CTL_CODE(IOCTL_DISK_BASE, 0x0017, METHOD_BUFFERED, FILE_READ_ACCESS)
     
  3. BORYAK

    BORYAK Боран

    Публикаций:
    0
    Регистрация:
    22 апр 2005
    Сообщения:
    33
    Адрес:
    Kazakhstan
    Спасибо Можно еще вопрос, как представить 64-битное (беззнаковео)число (EDX:EAX) в стр. Есть ли что-нибудь в wsprintf?
     
  4. MHajduk

    MHajduk New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2006
    Сообщения:
    123
    Надеюсь, что правильно (ФАСМ):
    Код (Text):
    1. format PE GUI 4.0
    2. entry start
    3.  
    4. (...)
    5.  
    6. section '.data' data readable writeable
    7.  
    8. FormattingStr       db 'Число (edx:eax): 0x%8.8X%8.8X', 0
    9. Buf         rb 200
    10.  
    11. (...)
    12.  
    13. section '.code' code readable executable
    14.  
    15. (...)
    16.  
    17. cinvoke wsprintf, Buf, FormattingStr, edx, eax
    18. invoke  MessageBox, 0, Buf, 0, MB_OK
    19.  
    20. (...)
     
  5. BORYAK

    BORYAK Боран

    Публикаций:
    0
    Регистрация:
    22 апр 2005
    Сообщения:
    33
    Адрес:
    Kazakhstan