Запустите экземпляр Autodesk Inventor

Я использую Inventor API для настройки документов изобретателя. Здесь я использую код vb.net для запуска экземпляра Inventor. Мой код

 inventorApp = CreateObject("Inventor.Application", "")
 inventorApp.Visible = True

это нормально и работает нормально. но когда мы открываем визуальную студию, работающую от имени администратора, возникает ошибка createobject. Кто-нибудь знает какой-либо другой способ запустить экземпляр Inventor?


person Arun    schedule 13.08.2013    source источник
comment
Что такое "какая-то ошибка"?   -  person Dee    schedule 13.08.2013
comment
Не удается создать компонент ActiveX.   -  person Arun    schedule 13.08.2013
comment
Вы ссылались на COM в свойствах проекта?   -  person Jose C    schedule 13.08.2013


Ответы (2)


Вместо этого попробуйте использовать метод маршала.

    Dim m_inventorApp As Inventor.Application
    Try ' Try to use active inventor instance

        Try
            m_inventorApp = System.Runtime.InteropServices.Marshal.GetActiveObject("Inventor.Application")
            m_inventorApp.SilentOperation = True
        Catch ' If not active, create a new instance of Inventor
            Dim inventorAppType As Type = System.Type.GetTypeFromProgID("Inventor.Application")
            m_inventorApp = System.Activator.CreateInstance(inventorAppType)
            ' Must set visible explicitly
            m_inventorApp.Visible = True
            m_inventorApp.SilentOperation = True
        End Try
    Catch
        'Cant get or create an instance of inventor.
    End Try
person Rob    schedule 11.03.2014

Private Sub Open_Button_Click()

ThisApplication.SilentOperation = True                'Suppresses the resolve links dialog

Dim myPath As String
myPath = FileName.Text                              'Gets the string, FileName, from module 1
Dim Shell As Object
Set Shell = CreateObject("Shell.Application")
Shell.Open (myPath)                                                      'Opens selected file

Resolve_and_Open.Hide                                               'Hides module

CompareStrings

End Sub

Это чтобы открыть печальную сборку, в которой нужно разрешить ссылки. Я не уверен, что это обойдет эту ошибку, но попробуйте использовать это:

ThisApplication.SilentOperation = True

Либо так, либо создать оболочку, а затем открыть ее таким образом, а не напрямую.

person meer2kat    schedule 14.03.2014