Поэтапное создание AddIn

В Visual Studio создаем проект и используем шаблон «Autodesk Inventor AddIn» (Рисунок 3).

 
  Поэтапное создание AddIn - student2.ru

Рисунок 3. Выбор шаблона

Далее открываем окно (по умолчанию) кода StandardAddInServer и добавляем код

Imports Inventor

Imports System.Runtime.InteropServices

Imports Microsoft.Win32

Namespace HelloWorldAddIn_VB

<ProgIdAttribute("HelloWorldAddIn_VB.StandardAddInServer"), _

GuidAttribute("82ed13f7-bdb1-4685-840e-6fcc84a0f84c")> _

Public Class StandardAddInServer

Implements Inventor.ApplicationAddInServer

Public m_inventorApplication As Inventor.Application

Private mAsmButtonDef As ButtonDefinition

Private mPartButtonDef As ButtonDefinition

Private Const strAddInGuid As String = "b22d0530-5e1f-426d-9a76-5b383def94fa"

#Region "ApplicationAddInServer Members"

Public Sub Activate(ByVal addInSiteObject As Inventor.ApplicationAddInSite, ByVal firstTime As Boolean) Implements Inventor.ApplicationAddInServer.Activate

m_inventorApplication = addInSiteObject.Application

Dim oCtrlDefs As ControlDefinitions _

= m_inventorApplication.CommandManager.ControlDefinitions

Dim oIPictureDisp As Object = PictureDispConverter _

.ToIPictureDisp(My.Resources.Icon)

mAsmButtonDef = oCtrlDefs.AddButtonDefinition( _

"Включение/выключение видимости", _

"Autodesk:RibbonVBTest:Button1", _

CommandTypesEnum.kQueryOnlyCmdType, _

strAddInGuid, _

"Описание", _

"Изменить видимость в сечении", _

oIPictureDisp, _

oIPictureDisp, _

ButtonDisplayEnum.kDisplayTextInLearningMode)

If (firstTime) Then

Dim UIManager As UserInterfaceManager _

= m_inventorApplication.UserInterfaceManager

Dim assemblyRibbon As Inventor.Ribbon _

= UIManager.Ribbons.Item("Assembly")

Dim assemblyTab As Inventor.RibbonTab _

= assemblyRibbon.RibbonTabs.Item("id_TabAssemble")

Dim panel1 As Inventor.RibbonPanel _

= assemblyTab.RibbonPanels.Add( _

"Работа с сечением", _

"Autodesk:RibbonVBTest:Panel1", _

strAddInGuid)

panel1.CommandControls.AddButton(mAsmButtonDef, True)

End If

AddHandler mAsmButtonDef.OnExecute, AddressOf Me.mAsmButtonDef_OnExecute

End Sub

#Region "Event handlers"

Private Sub mAsmButtonDef_OnExecute(ByVal Context As Inventor.NameValueMap)

Dim Assem As AssemblyDocument

Dim PartD As PartDocument

Dim oModelSettings As ModelingSettings

Assem = m_inventorApplication.ActiveDocument

If Assem.SelectSet.Count = 0 Then

MsgBox("Выберите деталь")

Return

End If

Try

Dim selec As SelectSet

selec = Assem.SelectSet

Dim detal As ComponentOccurrence = Nothing

For Each obj As Object In selec

detal = obj

PartD = detal.Definition.Document

oModelSettings = PartD.ModelingSettings

If oModelSettings.AllowSectioningThruPart = True Then

oModelSettings.AllowSectioningThruPart = False

ElseIf oModelSettings.AllowSectioningThruPart = False Then

oModelSettings.AllowSectioningThruPart = True

End If

Next

Catch

End Try

End Sub

#End Region

Public Sub Deactivate() Implements Inventor.ApplicationAddInServer.Deactivate

Marshal.ReleaseComObject(m_inventorApplication)

m_inventorApplication = Nothing

System.GC.WaitForPendingFinalizers()

System.GC.Collect()

End Sub

Public ReadOnly Property Automation() As Object Implements Inventor.ApplicationAddInServer.Automation

Get

Return Nothing

End Get

End Property

Public Sub ExecuteCommand(ByVal commandID As Integer) Implements Inventor.ApplicationAddInServer.ExecuteCommand

End Sub

#End Region

End Class

Компилируем, сохраняем проект далее для работы AddIn необходимо:

Из папки Ваш путь \Program\obj\Debug\ скопировать файл Program.dll

в папку Ваш путь\Autodesk\Inventor 2015\Bin

Из папки Ваш путь \Program\ скопировать файл Autodesk.Program.Inventor

в папку Ваш путь\Autodesk\Inventor 2015\Addins

В Autodesk Inventor переходим на вкладку «Инструменты» далее кнопка «Надстройка» (Рисунок 4), находим наш Addin жмем на параметр «Загружать автоматически». Нажимаем «ок». Теперь при запуске Autodesk Inventor Addin будет загружаться

Поэтапное создание AddIn - student2.ru

Рисунок 4. Список надстроек

Создание инсталлятора

Сведения о Inno Setup

Для создания инсталлятора воспользовался бесплатной программой Inno Setup

Inno Setup - Эта программа представляет собой многофункциональный инструмент для создания исполняемых (ЕХЕ) файлов, имеющий в своем арсенале множество полезных функций. Например, при создании нового дистрибутива поможет специальный "мастер" (wizard), а в процессе вы можете настроить множество различных параметров. Кроме этого, Inno Setup позволяет определить все записи в файлах системного реестра и инициализации, выбрать, будет ли программа автоматически загружаться с запуском операционной системы и добавлять свою пиктограмму в меню "Пуск", а также оснащает каждый дистрибутив системой корректного удаления из системы.

Наши рекомендации