Сборка библиотеки Microsoft Detours под Visual Studio 2008

    О прекрасной библиотеке Microsoft Detours тут уже писали. Её возможности и правда впечатляют, есть только одно но: библиотеку нужно собирать из исходников (что вообще не характерно для библиотек на платформе Windows и тем более для продуктов Microsoft). Более того, внятную инструкцию как это сделать найти трудно (я так и не смог), а штатный make-файл при сборке с помощью Visual Studio 2008 выдаёт кучу ошибок. Собрав наконец Detours, я решил написать (для себя — на будущее) инструкцию по сборке. Если кому-то она сэкономит пару минут — буду рад.

    1. Качаем Microsoft Detours.
    2. Устанавливаем (всё по-умолчанию).
    3. Переходим в папку проекта, открываем файл samples\common.mak в любом текстовом редакторе (полный путь к этому файлу у меня: C:\Program Files\Microsoft Research\Detours Express 3.0\samples\common.mak). Внимание — если вы используете Vista\Win7 с включенным UAC — вам понадобится редактор, запущенный с привилегиями администратора («Run as administrator»).
    4. Находим строку
      rc /nologo /fo$(@) /i$(INCD) $(*B).rc
      и заменяем её на
      rc /fo$(@) /i$(INCD) $(*B).rc

      т.е. убираем "/nologo"
    5. Запускаем консоль Visual Studio с привилегиями администратора: Пуск->All programs->Microsoft Visual Studio 2008->Visual Studio Tools->Visual Studio 2008 Command Prompt — «Run as administrator»
    6. Переходим в папку Microsoft Detours
      cd "C:\Program Files\Microsoft Research\Detours Express 3.0"
    7. Объявляем переменную окружения с целевой платформой
      set DETOURS_TARGET_PROCESSOR=x86
    8. Билдим
      nmake all

    На выходе получаем собранную библиотеку и все примеры из папки samples.
    Удачи в использовании.
    Share post
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 9

    • UFO just landed and posted this here
        +2
        Из-за этого тоже. rc.exe VS 2008 не понимает ключа /nologo, выбрасывает ошибку и билд останавливается. По поводу того, что этот ключ можно было бы просто игнорировать есть пару тикетов в багтрекере Microsoft.
        • UFO just landed and posted this here
        +1
        Спасибо за инструкцию по сборке. Если будет время, то напишите еще и инструкцию «для начинающих», как с этой библиотекой работать. Уверен, будет очень интересно попробовать (:
        0
        Что то всплеск публикаций по интерцепту.
          0
          В современном мире 64х-разрядных ОС и приложений, платить за Detours? Нет, спасибо :) Лучше MinHook взять.
            +1
            По сути всё-равно на чём учиться — что Detours, что Minhook, что ApiHjack, что Mhook — принципы одни и те же. А детурс хотя бы неплохо документирован и примеров в комплекте куча.

          Only users with full accounts can post comments. Log in, please.