Autochk.exe - вывод информации на экран...

Тема в разделе "WASM.BEGINNERS", создана пользователем sxd, 16 май 2007.

  1. sxd

    sxd Виталий

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    56
    Адрес:
    Москва
    Товарищи дизассемблерщики помогите пожалуйста совсем замучался я с этим autochk.exe: это виндовое native приложение запускается через Session Manager во время загрузки Windows до Winlogon... Часто после критического завершения работы либо если нарошно проверку диска назначил при следущем запуске компьютера autochk.exe начинает проверять диски, выводя различную информацию на экран... Я думаю что для вывода на экран он использует функцию NtDisplayString либо NtDisplayString...
    Может кто-нибудь дизассемблировать и узнать с помощью какой функции он выводит информацию на экран и если это NtDisplayString либо NtDisplayString используется ли в выводимых строках возврат коретки - \r (потому что реализация вывода \n работает как положено, а вот с \r есть проблемы) для создания бегущих процентов - текущее состояние выполнения операции.
    Помогите пожалуйста кто-нибудь, ВЫ - последняя надежда!
     
  2. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Почитай статьи про Native-проги и узнай, что вывод на экран осуществляется через NtDisplayString.
     
  3. sxd

    sxd Виталий

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    56
    Адрес:
    Москва
    Да это я знаю и пробовал выводить при помощи NtDisplayString строки... работает нормально и с \n, меня интересует создание процентов... Я это могу реализовать только с использованием возврата каретки - \r... А с ним функция NtDisplayString работает неверно, хотя в документации сказано Some basic control characters are implemented (like CR, LF).
     
  4. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    http://forum.sources.ru/index.php?showtopic=168667&st=0 твой топик?)
    ой, почитал там ответы, писеееец. Народ там жестко тупит )) Ужас просто. А еще форум кодерский называется=\
     
  5. sxd

    sxd Виталий

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    56
    Адрес:
    Москва
    Great во во я как бы и сам не чайник с файлами и памятью на уровне ядра не проблема но вот эта хрень меня уже просто достала... я уже все форумы нета зафлудил и что - хрен кто помог хотя казалось бы проблема... И все только и советуют своими WinAPI хотя не понимаю что сами говорят... Не подскажешь чтобы ты сделал на моём месте... Я почти что в отчаянии... Куда обратиться?
     
  6. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    я поискал специально гуглом все твои темы на форумах разных... блин, ну какие же там тупые сидят в большинстве своём... это мегажесть просто...
     
  7. Nouzui

    Nouzui New Member

    Публикаций:
    0
    Регистрация:
    17 ноя 2006
    Сообщения:
    856
    sxd
    ну что это, прям вопрос жизни и смерти, что ли? \
    попробуй код бакспейса (\b)
     
  8. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    Мда..

    Научился бы пользоваться гуглом.
     
  9. sxd

    sxd Виталий

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    56
    Адрес:
    Москва
    Да видно Марку Руссиновичу вынужден буду писать :))
    Самое главное ладно ошибка была синтаксическая...
     
  10. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    ОБратиться к IDA Pro и долго фтыкать в листинг autochk и ntdll
     
  11. sxd

    sxd Виталий

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    56
    Адрес:
    Москва
    Да нет Nouzui конечно нет просто это вопрос принципиальный да и хотелось бы узнать...
    а вот за этот совет спасибо тебе, попробую...
     
  12. sxd

    sxd Виталий

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    56
    Адрес:
    Москва
    Если бы я ещё имел опыт такой работы :dntknw:(
     
  13. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    По идее ты прав в том, что надо юзать "\r".
    Как она у тебя неверно работает?
     
  14. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    судя по его постам на других форумах, к началу строки она-то переходит, только сбрасывается фон строки с синего на черный. получается текст на черной полоске. скрин я видел)

    у себя проверять влом
     
  15. Ultrin Faern

    Ultrin Faern New Member

    Публикаций:
    0
    Регистрация:
    25 июн 2006
    Сообщения:
    170
    А если пробелы печатать - синий фон обратно появляется?
     
  16. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Ultrin Faern
    судя по видео, нет
     
  17. sxd

    sxd Виталий

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    56
    Адрес:
    Москва
    Ребята спасибо что откликнулись помочь!!!
    http://slil.ru/24362559
    Вот зацените... в архиве есть видео с возвратом каретки и переводом строки!
     
  18. sxd

    sxd Виталий

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    56
    Адрес:
    Москва
    Не вообще не пашет выводит какую-то точку...
     
  19. sxd

    sxd Виталий

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    56
    Адрес:
    Москва
    Кстати один человек с cracklab предложил покопаться в библиотеке bootvid.dll (VGA Boot Driver), смотрите что там имеется:

    VidBitBlt
    VidBufferToScreenBlt
    VidCleanUp
    VidDisplayString
    VidDisplayStringXY
    VidInitialize
    VidResetDisplay
    VidScreenToBufferBlt
    VidSetScrollRegion
    VidSetTextColor


    MmUnmapIoSpace
    MmMapIoSpace
    HalPrivateDispatchTable

    Что думаете по этому поводу?
     
  20. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    NtDisplayString - это оболочка VidDisplayString.