Статьи по Assembler


Browse info для ассемблера - часть 5


  • создайте файл brinfo.cpp и включите его в проект
  • содержимое файла brinfo.cpp должно представлять собой единственную строку:
    #include <windows.h&gt
  • включите для этого файла опцию Browser Info как для обычного C++-файла
  • откомпилируйте его

  • В диалоге Project Settings на вкладке Browse Info:

    • установите чекбокс Build browse info file
    • установите чекбокс Suppress startup banner
    • дополните содержимое поля Project options следующим текстом:
      Debug\*.sbr Таким образом вы дадите утилите bscmake.exe команду включить в сборку все sbr-файлы, содержащиеся в папке Debug

    • Выполните компиляцию всех модулей проекта, а затем его компоновку. Browser Info готово к работе.

      Следует учесть одно неприятное обстоятельство. Рабочая среда определяет необходимость запуска утилиты bscmake.exe по факту выполнения компиляции хотя бы одного файла C/C++. Ассемблерные же файлы, будучи компилируемы посредством Custom Build, к сожалению, такой команды рабочей среде не дают. Поэтому все изменения в составе идентификаторов в ассемблерных файлах остаются втуне до тех пор, пока не будет перекомпилирован хотя бы один cpp-файл проекта и после этого не выполнена его компоновка. В чисто ассемблерных проектах придется вручную вызывать компиляцию файла brinfo.cpp.

      В этой беде мог бы помочь вынос вызова утилиты bscmake.exe на этап Post-build step. Однако, этот фокус не проходит: дело в том, что однажды активизировавшись, Browse Info открывает bsc-файл и держит его в дальнейшем в открытом состоянии, запрещая таким образом запись в него всем внешним программам. Этот запрет отменяется только на этапе компоновки проекта, но не на этапе Post-build step.

       

      Вариант с несколькими проектами базируется на тех же идеях, что и вариант с одним проектом, но с учетом некоторых коррекций:

      • прежде всего следует определиться, имеется ли необходимость иметь единое для всех проектов пространство идентификаторов (не в смысле программирования, а в смысле просмотра их с помощью Browse Info), или у каждого проекта должно быть свое пространство, или проекты можно разбить на группы, с отдельным пространством для каждой группы
      • для каждого пространства следует определить одну папку, в которой должны содержаться все sbr-файлы модулей, относящихся к этому пространству
      • для каждого пространства следует использовать отдельный файл brinfo.spp






      • - Начало -  - Назад -  - Вперед -



        Книжный магазин