Перейти к публикации

Вопрос по Apprentice Server


Рекомендованные сообщения

Всем привет! Может кто-нибудь сталкивался с такой проблемой:

вот пример из документации по AutoDesk Inventor API (Apprentice Server)

Делаю макрос на VBA внутри Inventor'а , копируя слово в слово пример, меняю только имя файла.

1) Откуда взята константа kAssemblyDocument ?

2) Самое главное - пример не работает - ошибка обращения к свойству

ApprenticeServerDocument.ComponentDefinition в строке

oDoc.ComponentDefinition.Occurrences

Говорит: Object doesn't support this action

т.е. как я понял - у объекта oDoc класса ApprenticeServerDocument нет свойства ComponentDefinition???

Но, оно есть по документации и его можно использовать при использовании Inventor Application.

Как быть???

Sub TestApprentice()

' Create a new instance of Apprentice.

Dim oApprentice As New ApprenticeServerComponent

' Open a document.

Dim oDoc As ApprenticeServerDocument

Set oDoc = oApprentice.Open("C:\temp\Bracket.iam")

' Display this document's name.

Debug.Print oDoc.DisplayName

' Check to make sure the document is an assembly.

'If oDoc.DocumentType = kAssemblyDocument Then

' Show the occurrence tree.

Call GetComponents(oDoc.ComponentDefinition.Occurrences, 1)

'End If

End Sub

Sub GetComponents(InCollection As ComponentOccurrences, _

Level As Long)

' Iterate through the components in the current collection.

Dim oCompOccurrence As ComponentOccurrence

For Each oCompOccurrence In InCollection

' Display information about the current component.

Debug.Print Space(Level * 3) & oCompOccurrence.Name

' Recursively call this function for the suboccurrences

' of the current component.

Call GetComponents(oCompOccurrence.SubOccurrences, Level + 1)

Next

End Sub

Ссылка на сообщение
Поделиться на других сайтах


Все решилось - надо запускать не из под инвентора а из Делфи например

<noindex>http://www.autocad.ru/cgi-bin/f1/board.cgi?t=10959op</noindex>

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...