Следующие значения системного реестра демонстрируют ветви системного реестра приложений:

[HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R15.0\ACAD-x:

xxx\AutodeskApps\AcadDC\Applications\Autodesk\Finder\Drawings]

"LocalName"="Drawings"

"File Based Search"=dword:00000001

"Advanced Search"=dword:00000001

"Date Search"=dword:00000001

"Date Available"=dword:00000001

"Size Available"=dword:00000001

"Extension"=".dwg"

"Auto Append"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R15.0\ACAD-x:

xxx\AutodeskApps\AcadDC\Applications\Autodesk\Finder\Drawings

\Advanced Properties]

"Advanced Property1"="Block name"

"Advanced Property2"="Block and drawing description"

"Advanced Property3"="Attribute tag"

"Advanced Property4"="Attribute value"

[HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R15.0\ACAD-x:

xxx\AutodeskApps\AcadDC\Applications\Autodesk\Finder\Drawings

\Properties]

"Property1"="File Name"

"Property2"="Title"

"Property3"="Subject"

"Property4"="Author"

"Property5"="Keywords"

Ключи расширений

Этот ключ - для довольных средств доступа, кто хотят регистрировать себя и участвовать в режиме рабочего стола Дизайн-центра AutoCAD. Эти довольные средства доступа обрабатывают только специфические типы расширений, и они не заинтересованы участием в заказной установке режима Дизайн-центра AutoCAD.

НЕ нашли? Не то? Что вы ищете?
Имя Расширения

Вся информация потребности Дизайн-центра AutoCAD от довольного средства доступа, участвующего в его настольном режиме сохранена под этим ключом. Ключ расширения может иметь любое число дополнительных ключей. Имя дополнительного ключа представляет имя расширений файла, которые показываются в Дизайн-центре AutoCAD.

Имеются два типа расширений, сохраненных в системном реестре, удовлетворяют тип и контейнерный тип. Под ключом Extension Name может быть следующие дополнительные клавиши:

    Содержательный тип

Если ключ расширения не имеет никаких дополнительных ключей, рассматривается быть расширением содержательного типа, если содержательное средство доступа определенно не устанавливает ключ контейнерный в значение одних.

    Контейнерный тип

Если ключ расширения имеет дополнительные ключи, рассматривается быть контейнерным расширением типа. Значения, сохраненные на этом уровне ключа игнорируются. Контейнерный ключ может иметь любое число дополнительных клавиш. Каждая дополнительная клавиша представляет тип содержания, которое контейнер может обрабатывать.

Следующие значения системного реестра демонстрируют отрасль системного реестра расширений:

[HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R15.0\ACAD-x:

xxx\AutodeskApps\AcadDC\Extensions]

[HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R15.0\ACAD-x:

xxx\AutodeskApps\AcadDC\Extensions\.dwg]

"Default_CLSID"="{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}"

"Default_IconIndex"=dword:00000002

"Container"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R15.0\ACAD-x:

xxx\AutodeskApps\AcadDC\Extensions\.dwg\Blocks]

"CLSID"="{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}"

"IconIndex"=dword:00000000

"Prefix"="AcDc"

"LocalName"="Blocks"

CLASSID Регистрация

Минимальная регистрация, требуемая компонентом под HKEY_CLASSES_ROOT :

[HKEY_CLASSES_ROOT\CLSID\{<App CLSID xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx>}\

InProcServer32]

@="<full path to application>\mycomponent. arx"

Реализация интерфейса для AutoCAD Дизайн-центра

Чтобы обеспечивать содержание в Дизайн-центре AutoCAD, необходимо осуществить по крайней мере интерфейс IAcDcContentView. Если приложение предназначено, чтобы участвовать в механизме Средства поиска, то приложение должно поддержать интерфейс IAcDcContentFinder также. Реализация интерфейс IAcDcContentFinder необязательная.

Как правило, прикладной компонент делал бы следующее:

§  В течение инсталляции, это добавляет соответствующие вхождения в системный реестр.

§  Вызывает функции в интерфейсе IAcDcContentBrowser, которые осуществлены структурой Дизайн-центра AutoCAD. Они описаны в следующей таблице:

Функции интерфейса IAcDcContentBrowser

Функциональное

Описание

AddPaletteItem

Добавляет элемент в палитре Дизайн-центра AutoCAD.

AddNavigatorNode

Необходимый только в случае заказного представления{*вида*}. Добавляет узла в навигаторе Дизайн-центра AutoCAD.

GetDCFrameWindow

Это полезно в случае компонентов, желающих иметь имеющую силу метку окна, чтобы отобразить их меню контекста.

SetItemDescription

Устанавливает текст описания в области окна описания Дизайн-центра AutoCAD.

SetPaletteImageList

Устанавливает маленький / большой список изображения, используемый палитрой в Дизайн-центре AutoCAD.

SetNavigatorImageList

Устанавливает маленький список изображения, используемый навигатором в Дизайн-центре AutoCAD.

SetPaletteMultiSelect

Позволяет опции выбрать множественные довольные{*содержательные*} примитивы в палитре Дизайн-центра AutoCAD.

InsertPaletteColumn

Вставляет столбец (подэлемент) для содержательного примитива, обнаруживающегося в палитре.

DeleteAllPaletteItems

Удаляет все элементы в палитре Дизайн-центра AutoCAD.

GetSelectedNavNodeText

Получает отобранный текст узла навигатора.

GetCurrentViewMode

Получает текущий режим представления{*вида*} (рабочий стол, открытые рисунки, и т. д.).

SetPaletteSubItem

Устанавливает подъэлемент за элемент в палитре Дизайн-центра AutoCAD.

SortPaletteItems

Сортирует элементы в палитре Дизайн-центра AutoCAD.

    Функции IAcDcContentView связывают с помощью интерфейса в компоненте. Они описаны в следующей таблице:

Функции интерфейса IAcDcContentView

Функция

Описание

Initialize

Кэши данный IAcDcContentBrowser. Опционально создает составляющее окно и скрывает это. Это позволяет компоненту всплывать любые меню контекста для его содержания. Создает по крайней мере один маленький и большой список изображения. Это также исполняет то, что другая инициализация требована.

NavigatorNodeClick

Показывает содержание данного файла в палитре, вызывая AddPaletteItem () от кэшируемого IAcDcContentBrowser. Произвольно, это может просить, чтобы броузер сортировал элементы. Имеются функции в IAcDcContentBrowser, чтобы делать сортировку.

NavigatorMouseUp

Отображает меню контекста, значимое для данного контейнера.

PaletteMouseUp

Отображает меню контекста, значимое для данного содержательного примитива / примитивов.

PaletteItemClick

Кэширует данный отобранный элемент и произвольно устанавливает описание элемента через броузер. Этот метод необязательный.

RenderPreviewWindow

Выполняет изображение отобранного элемента на данном окне предварительного просмотра. Этот метод необязательный.

PaletteItemDblClick

Показывает содержание контейнера в случае, если нажатый элемент - файл. То, что соответствующее в AutoCAD, если нажатый элемент - содержание, которое компонент отображается.

PaletteColumnClick

Просит, чтобы содержательный броузер делал сортировку к данным сорта компонента. Этот метод необязательный.

PaletteBeginDrag

Начинает перемещение содержания / контейнера примитива. Компонент принят, чтобы заботиться перетаскиваемый и снижение типов регистрир / содержания, которые являются значимыми для этого.

ReleaseBrowser

Выпускает кэшируемый броузер.

GetLargeImage

Заставит значок (32x32 предварительного просмотра для данного контейнерного файла обнаруживаться в большом виде значка в Контексте Проекта.

QueryContextMenu

Добавляет пункты меню контекста для контейнерного (файла) в палитре к данному меню контекста.

InvokeCommand

Вызывает команду при данной команде ID onthe меню контекста, которое компонент обеспечил.

Настройка Дизайн-центра AutoCAD

Относительно просто создать приложение, чтобы обеспечить заказное содержание для Дизайн-центра AutoCAD, используя ATL AppWizard. Этот пример доступен в ObjectARX SDK, но это может быть создано на пустом месте после шагов ниже. Выборка добавляет текстовые файлы (с. txt расширениями{*продлениями*}) как содержание. Одиночный щелчок на текстовом файле покажет содержание в окне описания (если это активно). Двойной щелчок будет брать содержание файла и вставлять это как mtext в пространство модели в центре текущей области просмотра, используя текущий текстовый стиль.

Создайте ActiveX Проект Библиотеки Шаблона

1 Создают новый проект в Visual C++, используя COM ATL AppWizard. Для этого примера, мы назовем проект AsdkDesignCenterSamp. Выбрал тип сервера DLL и Поддержку MFC. Это не требовано, чтобы использовать MFC, но для этой выборки, мы будем использовать это, чтобы делать вещи проще. Нажмите Finish и затем OK создавать проект.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132