| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Code ausführen (1684 mal gelesen)
|
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 13. Nov. 2014 12:27 <-- editieren / zitieren --> Unities abgeben:
Schönen guten Tag, Ich bin umgestiegen auf vb.net und arbeite dazu jetzt mit Microsoft Visual Basic 2010 Express. Ich wollte mal fragen wie ich ein Programm was für Inventor geschrieben ist debuggen kann? Denn wenn ich eine .exe erstellen will oder debuggen will kommen Fehler (bestimmt weil IV nicht das active Programm ist). Denn aus Iv muss ich ja auf die erstellte .exe zugreifen, oder lieg ich da Falsch.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 13. Nov. 2014 12:41 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
|
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 13. Nov. 2014 12:57 <-- editieren / zitieren --> Unities abgeben:
Okay erstmal vielen Dank für den Link. Ich werde ihn mal durchgehen und dann nochmal fragen fals ich etwas nicht verstehe, denn ist ja alles Englisch und da bin ich nun wirklich nicht der beste^^ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 13. Nov. 2014 14:27 <-- editieren / zitieren --> Unities abgeben:
|
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 13. Nov. 2014 14:39 <-- editieren / zitieren --> Unities abgeben:
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2015 Professional Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 13. Nov. 2014 14:49 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
|
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 14. Nov. 2014 07:23 <-- editieren / zitieren --> Unities abgeben:
Schönen guten Morgen, Ich hab mal ne Frage, laut dem Beitrag über Add Ins soll ich nach dem erstellen des Add Ins Inventor starten und im Add-IN Manager schauen ob es drin ist. Wo finde ich den Add-In Manager? Ist das unter Extras -> Zusatzsmodule ?? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2015 Professional Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 14. Nov. 2014 07:41 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
|
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 14. Nov. 2014 07:43 <-- editieren / zitieren --> Unities abgeben:
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2015 Professional Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 14. Nov. 2014 07:44 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
|
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 14. Nov. 2014 07:50 <-- editieren / zitieren --> Unities abgeben:
ja so hatte ich es ja auch verstanden... Aber ich habe auch einProblem festgestellt: Laut dem Artikel wird beschrieben das beim erstellen des Add-Ins zwei Cod-Bereiche erstellt werden in der StandartAddInServer.vb. -> ApplicationAddInServer Members -> COM Registration Aber wenn ich bei mir schaue fehlt das COM Registration...kann das damit zusammen hängen?
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2015 Professional Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 14. Nov. 2014 07:51 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
|
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 14. Nov. 2014 07:52 <-- editieren / zitieren --> Unities abgeben:
Ich kann den Code auch nicht Debuggen, da kommt ein Fehler: "Ein Projekt mit dem Ausgabetyp "Klassenbibliothek" kann nicht direkt gestartet werden. Um das Projekt zu debuggen, fügen sie dieser Projektmappe ein ausführbares Projekt hinzu, das auf das Bibliotheksprojekt verweist. Legen sie das ausführbare Projekt als Startprojekt fest." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 14. Nov. 2014 07:54 <-- editieren / zitieren --> Unities abgeben:
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2015 Professional Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 14. Nov. 2014 08:03 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
Also laut dem Artikel, den ich oben gelinkt habe ist eine Addinerstellung mit der Expressversion gar nicht möglich. Die Fehlermeldung, die du beschreibst, kommt bei mir auch immer, wenn ich eine Klassenbibliothek erstellen will. Ich kann aber dann auch kein Startobjekt festlegen.... Vielleicht liegt das an der Expressversion... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 14. Nov. 2014 08:07 <-- editieren / zitieren --> Unities abgeben:
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2015 Professional Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 14. Nov. 2014 08:12 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
Ja, die Versionen, die das könnten kosten leider einiges und sind für "nur mal zwischendurch ne Kleinigkeit programmieren" nicht unbedingt rentabel. Aber vielleicht gibt es ja einen Trick, oder wir beide machen etwas falsch. Vielleicht kann uns ja doch noch einer der Profis hier weiterhelfen... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 14. Nov. 2014 08:48 <-- editieren / zitieren --> Unities abgeben:
Ja aber ich verstehe nicht wieso das nicht geht, denn in dem Artikel wie man AddIns erstellt wird doch gesagt es geht mit 2008 express auch also müsste es doch auch mit dem 2010er Version funktionieren oder lieg ich da falsch? kann uns da bitte jemand weiterhelfen? gibt es eine möglichkeit mit der 2010 express Add Ins zu erstellen oder müssen wir zwingen auf ein anderes Programm umsteigen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
livrig Mitglied
Beiträge: 1 Registriert: 14.11.2014
|
erstellt am: 14. Nov. 2014 16:12 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
Addins erstellen geht auch mit der Express Version. Um mit der Express Version zu debuggen, gibt es außerdem einen Workaround. => alles in dem Link von rkauskh beschrieben! Eine andere Möglichkeit, die ich selber nutze und ganz gut finde, das Addon als eigenständige exe zu haben und sich dann mit Inventor verbinden lassen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 14. Nov. 2014 20:55 <-- editieren / zitieren --> Unities abgeben:
ja okay das das alles beschrieben ist in dem Link stimmt aber wenn ich die Add-In Erstellung beginne Fehlt die Registrierung zu Inventor von daher funktioniert das alles nicht wie ich denke.... Gibts es denn jemand der mit visual basic 2010 express und IV 14 arbeitet und mal erklären könnte wie man da vorgehen muss um add-Ins richtig zu erstellen und in IV einzubinden. Wäre wirklich net....in auch über jedem Tipp hilfreich kann ja auch sein ich hab nur irgendwas falsch gemacht oder so weil ichs vielleicht auf englisch nicht besser erstanden habe...
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 16. Nov. 2014 11:12 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
Hallo Hast du auch die register.bat aus dem Artikel ausgeführt? Mach mal ein unregister und registrier das AddIn anschließend nochmal. Falls das nicht hilft, mach mal den Registryeditor von Windows auf. Kopier deine GUID aus dem AddIn in die Zwischenablage und lass im Zweig HKEY_CLASSES_ROOT danach suchen. Wenn gefunden, den Zweig aufklappen und unter InprocServer32 mal nachsehen wieviele Untereinträge da vorhanden sind. Es dürfte nur einer mit der aktuellen Versionsnummer des AddIns sein. Alle eventuell vorhandenen älteren mal rauslöschen. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 16. Nov. 2014 22:31 <-- editieren / zitieren --> Unities abgeben:
Hallo Ralf, danke erstmal für die Tipps aber ich habe davon nichts hinbekommen. Im Anhang seht ihr den bildschirm den ich habe wenn ein IV AddIn beginne. Wie man sehen kann fehlt die "COM Registration" und hier entstet auch meine Frage wieso ist die nicht da, denn laut link müsste es die ja automatisch erstellen... Ist die bei euch vorhanden? Hab ich evt. irgedwas vergessen einzustellen? Bin für jeden Tipp und jegliche Hilfe dankbar, denn durch das "kleine" Problem hängt mein ganzes Projekt. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 17. Nov. 2014 00:35 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
Hallo Hah, du hast eine Vorlage von mindestens Inventor 2012 oder neuer benutzt. Stimmts'? Da wurde auf registryfree AddIn's umgestellt, die den COM-Abschnitt nicht benötigen. Auch zu erkennen an der Manifestdatei. Schau dir mal diesen Beitrag an, wie man mit diesem AddIn-Typ umgeht. Ist etwas mehr Vorbereitung, aber spart später das andauernde registrieren/deregistrieren. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 17. Nov. 2014 07:06 <-- editieren / zitieren --> Unities abgeben:
Vielen Dank Ralf für die Info, nachdem du mir von dem Register und unregister geschrieben hattest habe ich danach auch noch gestöbert und bissel was gefunden aber nicht den Beitrag. Ich meld mich wenns Probleme gibt. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 17. Nov. 2014 08:01 <-- editieren / zitieren --> Unities abgeben:
|
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 17. Nov. 2014 11:32 <-- editieren / zitieren --> Unities abgeben:
Also das AddIn wird jetzt angezeigt bei den Zusatzmodulen im Iv, wie im Bild zu sehenen. Name: AAddIn Und da wollte ich, um das AddIn zu testen, das eine MessageBox angezeigt wird wenn man speichern clickt. Das funktioniert schon nicht.... liegt das am Code oder fehlt mir noch irgendweine Einstellung? Code unter StandardAddInServer.vb: Imports Inventor Imports System.Runtime.InteropServices Imports Microsoft.Win32 Namespace AAddIn <ProgIdAttribute("AAddIn.StandardAddInServer"), _ GuidAttribute("134e9323-343f-484d-b84b-2cec13bc0607")> _ Public Class StandardAddInServer Implements Inventor.ApplicationAddInServer ' Inventor application object. Private m_inventorApplication As Inventor.Application Private WithEvents m_appEvents As Inventor.ApplicationEvents #Region "ApplicationAddInServer Members" Public Sub Activate(ByVal addInSiteObject As Inventor.ApplicationAddInSite, ByVal firstTime As Boolean) Implements Inventor.ApplicationAddInServer.Activate ' This method is called by Inventor when it loads the AddIn. ' The AddInSiteObject provides access to the Inventor Application object. ' The FirstTime flag indicates if the AddIn is loaded for the first time. ' Initialize AddIn members. m_inventorApplication = addInSiteObject.Application ' TODO: Add ApplicationAddInServer.Activate implementation. ' e.g. event initialization, command creation etc. End Sub Public Sub Deactivate() Implements Inventor.ApplicationAddInServer.Deactivate ' This method is called by Inventor when the AddIn is unloaded. ' The AddIn will be unloaded either manually by the user or ' when the Inventor session is terminated. ' TODO: Add ApplicationAddInServer.Deactivate implementation ' Release objects. m_inventorApplication = Nothing System.GC.Collect() System.GC.WaitForPendingFinalizers() End Sub Public ReadOnly Property Automation() As Object Implements Inventor.ApplicationAddInServer.Automation ' This property is provided to allow the AddIn to expose an API ' of its own to other programs. Typically, this would be done by ' implementing the AddIn's API interface in a class and returning ' that class object through this property. Get Return Nothing End Get End Property Public Sub ExecuteCommand(ByVal commandID As Integer) Implements Inventor.ApplicationAddInServer.ExecuteCommand ' Note:this method is now obsolete, you should use the ' ControlDefinition functionality for implementing commands. End Sub Private Sub m_appEvents_OnSaveDocument( _ ByVal DocumentObject As Inventor._Document, _ ByVal BeforeOrAfter As Inventor.EventTimingEnum, _ ByVal Context As Inventor.NameValueMap, _ ByRef HandlingCode As Inventor.HandlingCodeEnum) _ Handles m_appEvents.OnSaveDocument If BeforeOrAfter = EventTimingEnum.kBefore Then MsgBox("hallo es geht") End If End Sub #End Region End Class End Namespace Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 17. Nov. 2014 20:07 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
Hallo In deiner Activate-Sub steht's als Kommentar doch drin. Event initialization fehlt. Fügt mal in Activate ein:
Code:
AddHandler m_AppEvents.OnSaveDocument, AddressOf Me.m_appEvents_OnSaveDocument
------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 18. Nov. 2014 07:32 <-- editieren / zitieren --> Unities abgeben:
Also ich habe die Zeile in den Activate-Sub eingefügt, so: Public Sub Activate(ByVal addInSiteObject As Inventor.ApplicationAddInSite, ByVal firstTime As Boolean) Implements Inventor.ApplicationAddInServer.Activate
'This method is called by Inventor when it loads the AddIn. 'The AddInSiteObject provides access to the Inventor Application object. 'The FirstTime flag indicates if the AddIn is loaded for the first time. 'Initialize AddIn members. m_inventorApplication = addInSiteObject.Application ' TODO: Add ApplicationAddInServer.Activate implementation. ' e.g. event initialization, command creation etc. AddHandler m_appEvents.OnSaveDocument, AddressOf Me.m_appEvents_OnSaveDocument End Sub Jetzt steht aber im Zusatzmodul "Automatisch/Entladen" ->siehe Anhang Müsste da nicht "Automatisch/Geladen" stehen? Wenn ich die Zeile aus dem Activate-Sub wieder rausnehme steht wieder "Automatisch/Geladen" drin.... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 18. Nov. 2014 15:00 <-- editieren / zitieren --> Unities abgeben:
Also ich habs jetzt rausgefunde in die Activate-Sub muss nicht die Zeile von Ralf rein (trotzdem großen Dank an Ralf) sondern es muss rein: m_appEvents = m_inventorApplication.ApplicationEvents Dann gehts Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2015 Professional Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 18. Nov. 2014 16:11 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
Zitat: Original erstellt von rkauskh: HalloHah, du hast eine Vorlage von mindestens Inventor 2012 oder neuer benutzt. Stimmts'? Da wurde auf registryfree AddIn's umgestellt, die den COM-Abschnitt nicht benötigen. Auch zu erkennen an der Manifestdatei. Schau dir mal diesen Beitrag an, wie man mit diesem AddIn-Typ umgeht. Ist etwas mehr Vorbereitung, aber spart später das andauernde registrieren/deregistrieren.
Ich verstehe den Punkt 4 nicht. Was für eine Datei ist denn das? mit welchem Programm ist die zu erstellen? Danke für die Hilfe Ralf Gruß Chris Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 18. Nov. 2014 16:14 <-- editieren / zitieren --> Unities abgeben:
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2015 Professional Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 19. Nov. 2014 08:13 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
Guten morgen, ja, aber der Beitrag bezieht sich ja nicht auf Reg.-Free-Addins... Ich kann hier aber nur Reg.-Free arbeiten, weil ich keine Adminrechte bekomme und somit keine Einträge in die Registry schreiben kann. Gruß Chris Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 19. Nov. 2014 11:37 <-- editieren / zitieren --> Unities abgeben:
|
Chris 31 Mitglied Konstrukteur und Mädchen für alles
Beiträge: 575 Registriert: 23.04.2013 Inventor 2015 Professional Windows 7 64 bit 16GB RAM nVidia Quadro 600
|
erstellt am: 19. Nov. 2014 11:45 <-- editieren / zitieren --> Unities abgeben: Nur für Fiedel93felix
|
Fiedel93felix Mitglied Konstrukteur
Beiträge: 448 Registriert: 19.02.2014 Autodesk Inventor 2014 Microsoft Visual Basic 2010
|
erstellt am: 19. Nov. 2014 14:52 <-- editieren / zitieren --> Unities abgeben:
|