Sandcastle Help File Builder генерируем документацию для. Net Хабрахабр. Sandcastle Help File Builder это графическая оболочка над генератором документации Sandcastle. В свою очередь, Sandcastle это гибкий и многофункциональный генератор документации для. Net с использованием XML комментариев из исходного кода. Воспользуемся этим и в несколько шагов создадим документацию нашего проекта. Основные возможности Sandcastle. Включение в документацию XML комментариев из исходного кода. Автоматическое получение информации об элементах. Net, таких как классы, методы, свойства, перечисления с помощью reflection. Возможность интегрировать свои дополнительные HTML страницы в документацию. Генерация документации в нескольких форматах Microsoft Compiled HTML Help CHM, MS Microsoft Help 2 MSDN, веб сайт статический и динамический с поиском ASP. NET. Sandcastle активно использует в своей работе XML и преобразования с помощью XSLT. Все реализовано очень гибко, легко настраиваемо и доступно в виде исходных кодов. Подготовка к работе. Для создания документации нам необходимо установить последние стабильные версии Тестовый проект для документирования. В моем случае не буду усложнять пример и сделаю документацию для приложения Hello World. Документация будет содержать описание используемых классов, пространств имен, стартовую страницу и страницу дополнительной информации о приложении. Для этого в контекстном меню на проекте Propertiesвкладка Buildраздел Output выставите галочку для XML documentation file. После компиляции проекта мы получим наше приложение Atv. Research. Hello. World. Atv. Research. Hello. World. XML. Давайте сразу добавим в нашу документацию пару статических страниц. Очень часто бывает, что технической информации из кода недостаточно. Нужны более общие описания, с рисунками и диаграммами. Или, например, требуется вставить целиком текст конфигурационного файла или WSDL для веб сервиса. В качестве примера мы вставим 2 статические HTML страницы. Одна из них будет стартовой для нашей документации. Index. htmlt DOCTYPEhtml. PUBLIC. Это наше приложение, XML файл с комментариями и 2 статические страницы для описания нашего приложения. В этом уроке мы создадим справочный файл в программе help and manual. Создание справочного файла chm в help and manual. Результат месяц работы по созданию мануала псу под хвостПришло время запускать Sandcastle Help File Builder GUI. Главное окно программы Sandcastle Help File Builder GUIДобавляем наши сборки и XML файлы с документацией, в нашем случае это Atv. Research. Hello. World. Atv. Research. Hello. World. XML. Добавляем общее описание проекта. Добавляем описание пространств имен, правильно структурированные и описанные они помогают лучше ориентироваться в проекте. Руководство По Работе С Html Help Workshop' title='Руководство По Работе С Html Help Workshop' />Вся эта информация будет отражена в полученной документации. Выполняем настройки проекта. Я перечислю только обязательные и те, на которые стоит сразу обратить внимание. Параметр. Значение. Описание. Additional and Conceptual Content. Additional. Content. В дополнительно открывшемся окне добавьте при помощи кнопки File наши страницы Index. Details. htm. Дополнительные статические HTML страницы. Build. Component. Руководство По Работе С Html Help Workshop' title='Руководство По Работе С Html Help Workshop' />Как создать CHM файл HTM2CHM и HTML Help Workshop в действии. Изложенное ниже руководство применимо к созданию любого CHM. Запускаем HTM2CHM и видим список режимов работы программы. Руководство По Работе С Html Help Workshop' title='Руководство По Работе С Html Help Workshop' />Configurations. Выберите в открывшемся окне Code Block Component. Нотариальное Заявление Об Отсутствии Наследников Образец. Мы его используем для подсветки синтаксиса из статической страницы. Framework. Version. Укажите здесь используемую в приложении версию. Net. Help. File. Format. Help. 1x. And. 2x. And. Website. Выберите один или несколько выходных форматов Html. Help. 1xHtml. Help. Web. Site. Help File. Help. Title. Тестовое консольное приложение. Наш заголовок. Html. Help. Name. Hello. World. Application. Имя выходного файла справки. Presentation. Stylevs. Тут уж на ваше предпочтение, мне привычней vs. PrototypeRoot. Namespace. Container. True. Мы отделим наше описание классов в отдельный узел справки. Root. Namespace. Title. Namespaces и дадим ему наше имя. Paths. Html. Help. Compiler. Path. C Program FilesHTML Help WorkshopПуть к HTML Help Workshop and Documentation. Html. Help. 2x. Compiler. Path. C Program FilesCommon FilesMicrosoft SharedHelp 2. CompilerПуть к Microsoft Help SDK, который устанавливается с Visual Studio SDK 2. Visual Studio 2. 00. SDK 1. 1. Output. Path. Help. ResultПуть, куда будет скопирована готовая документация. Sandcastle. Path. C Program FilesSandcastleПуть к Sandcastle, скорректируйте его в соответствии с вашими установками. Working. Path. Sandcastle. Working. FolderПуть к рабочей папке, где будут складываться промежуточные результаты работы. Дополнительно вы можете настроить текст, который будет выводиться на каждой странице вверху и внизу, строку копирайта и ссылки для обратной связи. Указать, стоит ли документировать приватные и защищенные методы и свойства. Включить показ предупреждений при отсутствии XML комментария в коде. Подробное описание настроек вы всегда найдете в прилагающейся документации. Но и не забывайте, что Sandcastle Help File Builder это графическая надстройка над Sandcastle, и вы можете при необходимости использовать его напрямую. Сохраним проект для повторного использования. Строим документацию. Результаты работы. Microsoft Compiled HTML Help CHMСправка в виде CHMСправка в виде CHM статическая страница. MS Microsoft Help 2. Интегрированная справка в формате MSDN3. Статический веб сайт. Справка в виде обычных HTML страниц. Динамический веб сайт ASP. NETСправка в виде динамического сайта с поиском. Дополнительная информация. Все используемые выше коды, проект Help File Builder и результаты его работы вы можете найти в архиве Sandcastle. Test. Project. zip на narod. KB. Ссылки для дальнейшего изучения Я показал только базовые возможности Sandcastle. Надеюсь, что вам было интересно и если вы еще не использовали его, то теперь попробуете. Спасибо за внимание.