Files
kompas3d-mcp/docs/Kompas3D_SDK/interfaces/iprocedureslibrary.md
T
mikhail e1337e4016 feat(sdk-docs): MD-база знаний SDK — в репозиторий; генератор и зеркало убраны
docs/Kompas3D_SDK/ становится каноническим источником справки КОМПАС SDK
и включается в репозиторий (2491 файл, ~14 МБ). HTML-зеркало
docs/KOMPAS_SDK_ru-RU/ (~1.4 ГБ, © АСКОН) и генератор
tools/build_kompas3d_sdk.py больше не нужны — регенерация не предполагается.

- .gitignore: MD-база разблокирована; зеркало остаётся проигнорированным
  (safety-net на случай повторной локальной выгрузки).
- CLAUDE.md / SKILL.md: убраны упоминания регенерации и зеркала.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-26 20:00:05 +03:00

12 KiB

title, type, api, tags, sources
title type api tags sources
Интерфейс IProceduresLibrary interface
api7
interface
api7
iprocedureslibrary
iprocedureslibrary.html

*API интерфейсов. Версия 7 > Менеджер библиотек  > Интерфейс ILibrary  > ILibrary - методы *

Интерфейс IProceduresLibrary

Интерфейс прикладной библиотеки КОМПАС. Иерархия: IKompasAPIObject ILibrary IProceduresLibrary Примечание:

  1. Интерфейс позволяет работать с прикладной библиотекой (*.rtw или *.dll), зарегистрированной в Менеджере библиотек. Можно получить стиль отображения библиотеки (панель, окно, диалог, меню) и массив процедур, реализованных в библиотеке.
  2. Данный интерфейс можно получить следующими способами: •у интерфейса коллекции прикладных библиотек IProceduresLibraries c помощью свойства IProceduresLibraries::Item, •у интерфейса ILibraryManager с помощью свойства ILibraryManager::CurrentLibrary, ILibraryManager::SystemControlStartLibrary.

AddIns - Признак AddIn-библиотеки

Тип данных: BOOL Синтаксис Automation:

AddIns = iObject.AddIns    Получить свойство (* )
AddIns = iObject.GetAddIns    Получить свойство (**)

Синтаксис COM:

iObject->get_AddIns (&AddIns)    Получить свойство

Примечание: Если библиотека является расширением, свойство вернет TRUE.

CurrentCommand - Текущая команда библиотеки

Тип данных: long Синтаксис Automation:

CurrentCommand = iObject.CurrentCommand    Получить свойство (* )
CurrentCommand = iObject.GetCurrentCommand    Получить свойство (**)

Синтаксис COM:

iObject->get_CurrentCommand (&CurrentCommand)    Получить свойство

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

Delete - Удалить описание библиотеки

Синтаксис Automation:

BOOL Delete();

Синтаксис COM:

HRESULT Delete( BOOL* PVal );
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.

Dictionary - Словарь

Тип данных: Указатель на интерфейс IKompasDictionary Синтаксис Automation:

Dictionary = Object.Dictionary    Получить свойство (* )
Dictionary = Object.GetDictionary()    Получить свойство (**)

Синтаксис COM:

Object.get_Dictionary( &Dictionary )    Получить свойство

Примечание: Свойство доступно только для чтения. Версия Компас v23

Executable - Признак выполнения библиотеки

Тип данных: BOOL Синтаксис Automation:

Executable = iObject.Executable    Получить свойство (* )
Executable = iObject.GetExecutable()    Получить свойство (**)

Синтаксис COM:

iObject->get_Executable( &Executable )    Получить свойство

Примечание: Если выполняется команда библиотеки или отрабатывается событие, на которое подписалась библиотека, то свойство вернет TRUE.

ExternalInterface - Получить указатель внешнего интерфейса

Тип данных: Указатель на интерфейс IDispatch Синтаксис Automation:

ExternalInterface = Object.ExternalInterface    Получить свойство (* )
ExternalInterface = Object.GetExternalInterface()    Получить свойство (**)

Синтаксис COM:

Object.get_ExternalInterface( &ExternalInterface )    Получить свойство

Примечание:

  1. Свойство доступно только для чтения.
  2. Addref на выдаваемый интерфейс не выполняется.
  3. Внешний интерфейс можно использовать для обмена данными между двумя приложениями. Первое приложение передает интерфейс при вызове метода ILibrary::Execute.
  4. После выполнения ILibrary::Execute свойство ExternalInterface возвращает NULL.

IconsFont - Имя файла шрифта для панели команд библиотеки

Тип данных: BSTR Синтаксис Automation:

IconsFont = Object.IconsFont    Получить свойство (* )
IconsFont = Object.GetIconsFont()    Получить свойство (**)

Синтаксис COM:

Object.get_IconsFont( &IconsFont )    Получить свойство

Примечание: Свойство доступно только для чтения.

LibraryName - Имя библиотеки, возвращаемое функцией LIBRARYNAME или LIBRARYID

Тип данных: BSTR Синтаксис Automation:

LibraryName = Object.LibraryName    Получить свойство (* )
LibraryName = Object.GetLibraryName()    Получить свойство (**)

Синтаксис COM:

Object.get_LibraryName( &LibraryName )    Получить свойство

Примечание: Свойство возвращает имя библиотеки, возвращаемое функцией LIBRARYNAME или LIBRARYID. Отображаемое имя библиотеки может отличаться, если в библиотеке реализована функция DisplayLibraryName. Для получения отображаемого имени библиотеки используется свойство ILibrary::Name. При получении библиотеки по имени из коллекции можно использовать как отображаемое, так и внутреннее имя. Свойство доступно только для чтения.

OpenHelp - Открыть справку приложения

Синтаксис Automation:

BOOL OpenHelp( long HelpId );

Синтаксис COM:

HRESULT OpenHelp( long HelpId, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.
Входные параметры:
HelpId    - идентификатор страницы справки.
Версия КОМПАС v22

Procedures - Коллекция процедур библиотеки

Тип данных: указатель на интерфейс IProcedures Синтаксис Automation:

Procedures = iObject.Procedures    Получить свойство (* )
Procedures = iObject.GetProcedures    Получить свойство (**)

Синтаксис COM:

iObject->get_Procedures (&Procedures)    Получить свойство

Примечание: Свойство позволяет получить коллекцию процедур библиотеки.

Style - Стиль отображения библиотеки

Тип данных: ksLibraryStyleEnum Синтаксис Automation:

Style = iObject.Style    Получить свойство (* )
iObject.Style = Style    Установить свойство (* )
Style = iObject.GetStyle()    Получить свойство (**)
iObject.SetStyle (Style)    Установить свойство (**)

Синтаксис COM:

iObject->get_Style (&Style)    Получить свойство
iObject->put_Style (Style)    Установить свойство

Примечание: Позволяет получить и установить стиль отображения библиотеки.

SystemControlStart - Передать управление системе из под библиотеки

Синтаксис Automation:

ksSystemControlStartEnum SystemControlStart( BSTR menuCommand );

Синтаксис COM:

HRESULT SystemControlStart([in] BSTR menuCommand, [out, retval] ksSystemControlStartEnum* pVal);
Входные параметры:
PathFolder    - путь к папке,
post    - TRUE - отложенное выполнение.
Возвращаемое значение:
ksSystemControlStartEnum

Примечание: Библиотечная функция отдает управление КОМПАС-ГРАФИК для интерактивной доработки документа. Возврат в библиотечную функцию будет осуществлен после нажатия команды в меню Библиотеки, обозначенной строкой menuCommand. Если строка не задана, то ей автоматически будет присвоено значение "Вернуться в библиотеку" (функция вернет ksSCStoppedByMenuCommand). Или при вызове из этой же библиотеки SystemControlStop (функция вернет ksSCStopItself). Библиотека, находясь в этом режиме, как бы замирает на вызове SystemControlStart. Если этот режим вызван в другой библиотеке, то в данной библиотеке режим выполняться не будет (функция вернет ksSCStartedByAnotherLibrary). Только одна библиотека может находиться в режиме SystemControlStart.

SystemControlStop - Вернуть управление в библиотеку

Синтаксис Automation:

BOOL SystemControlStop();

Синтаксис COM:

HRESULT SystemControlStop ([out, retval] VARIANT_BOOL* pVal);
Возвращаемое значение:
TRUE    - в случае успеха,
FALSE    - в случае неудачи.

Примечание: Метод позволяет вернуть управление в библиотеку, если она находится в режиме SystemControlStart.

UniqueId - Идентификатор библиотеки

Тип данных: long Синтаксис Automation:

UniqueId = iObject.UniqueId    Получить свойство (* )
UniqueId = iObject.GetUniqueId    Получить свойство (**)

Синтаксис COM:

iObject->get_UniqueId (&UniqueId)    Получить свойство

Примечание: Свойство позволяет получить идентификатор библиотеки. Идентификатор присваивается библиотеке, когда она подключена к системе. В этот момент библиотека отображается в меню Библиотеки и в Менеджере библиотек рядом с именем библиотеки взводится «галочка». У подключенной библиотеки можно выполнять команды (процедуры).