| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
Autor
|
Thema: Wie integriere ich NX 7 Open VB Wizard in Visual Studio 2010 (7097 mal gelesen)
|
christian muc Mitglied Student
Beiträge: 18 Registriert: 20.10.2010 Windows XP 64bit UG NX 7.5
|
erstellt am: 18. Jan. 2011 12:17 <-- editieren / zitieren --> Unities abgeben:
Hallo, habe mal wieder ein Anfängerproblem: Ich schaffs einfach nicht, den NX 7 Open VB Wizard von NX 7.5 in Visual Studio 2010 zu integrieren. Der Wizard wird beim Erstellen eines neuen Projekts in VS angezeigt. Wenn ich damit aber ein neues Projekt erstellen will, kommt folgende Meldung: Das Projekt "NX7_Open_VB_Wizard1" wird erstellt... Fehler beim Erstellen des Projekts Eine dotnet_author Lizenz ist vorhanden. Visual Studio starte ich aus der NX Eingabeaufforderung (devenv.exe) Folgende Dateien habe ich lt. Doku kopiert:
%UGII_BASE_DIR%\UGOPEN\vs_files\VC\VCWizards\ nach C:/program Files\Microsoft Visual Studio 8\VC\VCWizards\
und %UGII_BASE_DIR%\UGOPEN\vs_files\VC\vcprojects\ nach C:/program Files\Microsoft Visual Studio 8\VC\vcprojects\
Meine Software: Betriebssystem: XP 64bit (englisch) NX 7.5.2 (englisch) Visual Studio 2010 professional 32bit (deutsch, lässt sich nicht umstellen) Hat jemand eine Idee, woran es liegen könnte? Funktioniert das überhaupt mit Visual Studio 2010 oder brauche ich VS 2008? Kanns an den Spracheinstellungen liegen? Vielen Dank und Gruß, Christian
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 18. Jan. 2011 15:12 <-- editieren / zitieren --> Unities abgeben: Nur für christian muc
Hallo Christian, hast Du die richtigen Verzeichnisse erwischt? Beim Überfliegen lese ich bei Dir was von VC. Daneben hatte ich vor Kurzem mit den VC- Wizards auch Probleme. Die sind einfach von Siemens schlecht gepflegt. Alternative: Mit einer funktionierenden Version ein Template- Projekt anlegen und darauf aufsetzen oder die paar Referenzen etc. manuell eintragen. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
christian muc Mitglied Student
Beiträge: 18 Registriert: 20.10.2010 Windows XP 64bit UG NX 7.5
|
erstellt am: 19. Jan. 2011 09:52 <-- editieren / zitieren --> Unities abgeben:
Hallo Michael, vielen Dank für die Antwort. Die VB-Verzeichnisse habe ich, der Text oben ist aus nur der Doku kopiert. Dort ist das Beispiel mit VC. So siehts bei mir aus: Eine funktionierende Version habe ich leider nicht zur Verfügung. Habe deshalb die Vorlage des Wizards (...\NX 7.5\UGOPEN\vs_files\VB\VBWizards\NX7_VB\Templates\1033) manuell gestartet. Die vier Bibliotheken NXOpen, NXOpen.UF, NXOpen.Utilities und NXOpenUI habe ich ausgewählt. Anschließend habe ich ein Journal erstellt und dem Projekt hinzugefügt. Das Kompilieren funktioniert ohne Fehler. Beim Debuggen des Projekts wird NX gestartet. Aber die Ausführung in NX über File-> Execute->NXOpen funktioniert nicht. Dabei erhalte ich folgenden Fehler: Die Ausführung des Journals funktioniert einandfrei Bin da seit Tagen immer wieder mal dran, aber ich kriegs nicht hin. Gruß, Christian Die Edit meint noch: Können die unterschiedlichen Versionen von .NET Framework der Grund sein?
[Diese Nachricht wurde von christian muc am 19. Jan. 2011 editiert.]
[Diese Nachricht wurde von christian muc am 19. Jan. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 19. Jan. 2011 10:25 <-- editieren / zitieren --> Unities abgeben: Nur für christian muc
Hallo Christian, das siehst so aus, als würde NX keinen sog. Entry Point finden. Du brauchst dafür eine Sub Main, die "Public" sein muß. Evtl. noch ein "Shared" dazu, also Public Shared Sub Main() Am Framework liegt es nach meiner Einschätzung hier nicht, Du solltest jedoch für NX7.5 das Framework 2.0 verwenden. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
christian muc Mitglied Student
Beiträge: 18 Registriert: 20.10.2010 Windows XP 64bit UG NX 7.5
|
erstellt am: 20. Jan. 2011 12:06 <-- editieren / zitieren --> Unities abgeben:
Hallo Michael, Danke für den Tip, das wars aber leider auch nicht. Ich habe jetzt mal den Quelltext meines Versuchs angehängt. Wäre spitze, wenn Du da mal drüberschauen könntest. Wie gesagt, ich bin absoluter Anfänger. Vielleicht habe ich ja irgendwas Essentielles vergessen bzw. nicht berücksichtigt. Code:
Option Strict On Imports System Imports System.Collections Imports System.IO Imports System.EnvironmentImports NXOpen Imports NXOpen.UF Imports NXOpen.UI Imports NXOpen.Utilities Imports NXOpen.Assemblies Imports Microsoft.VisualBasic
Module NXJournal
Public Sub Main() Dim theSession As Session = Session.GetSession() ' ---------------------------------------------- ' Menu: File->New... ' ---------------------------------------------- Dim markId1 As Session.UndoMarkId markId1 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Start") Dim fileNew1 As FileNew fileNew1 = theSession.Parts.FileNew() theSession.SetUndoMarkName(markId1, "File New") Dim markId2 As Session.UndoMarkId markId2 = theSession.SetUndoMark(Session.MarkVisibility.Invisible, "File New") fileNew1.TemplateFileName = "model-plain-1-mm-template.prt" fileNew1.Application = FileNewApplication.Modeling fileNew1.Units = Part.Units.Millimeters fileNew1.NewFileName = "C:\VC2010\model1.prt" fileNew1.MasterFileName = "" fileNew1.UseBlankTemplate = False fileNew1.MakeDisplayedPart = True Dim nXObject1 As NXObject nXObject1 = fileNew1.Commit() Dim workPart As Part = theSession.Parts.Work Dim displayPart As Part = theSession.Parts.Display theSession.DeleteUndoMark(markId2, Nothing) fileNew1.Destroy() Dim markId3 As Session.UndoMarkId markId3 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Enter Modeling") ' ---------------------------------------------- ' Menu: File->Save As... ' ---------------------------------------------- Dim partSaveStatus1 As PartSaveStatus partSaveStatus1 = workPart.SaveAs("C:\VC2010\TEST_1") partSaveStatus1.Dispose() Dim partCloseResponses1 As PartCloseResponses partCloseResponses1 = theSession.Parts.NewPartCloseResponses() workPart.Close(BasePart.CloseWholeTree.False, BasePart.CloseModified.UseResponses, partCloseResponses1) workPart = Nothing displayPart = Nothing partCloseResponses1.Dispose() ' ---------------------------------------------- ' Menu: File->Open... ' ---------------------------------------------- Dim basePart1 As BasePart Dim partLoadStatus1 As PartLoadStatus basePart1 = theSession.Parts.OpenBaseDisplay("C:\VC2010\TEST_1.prt", partLoadStatus1) workPart = theSession.Parts.Work displayPart = theSession.Parts.Display partLoadStatus1.Dispose() Dim markId4 As Session.UndoMarkId markId4 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Enter Gateway") Dim markId5 As Session.UndoMarkId markId5 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Enter Modeling") End Sub
End Module
Gruß, Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 20. Jan. 2011 14:25 <-- editieren / zitieren --> Unities abgeben: Nur für christian muc
Hallo Christian, am Quelltext ist augenscheinlich nichts, was fehlt oder stört. Es könnte ein Problem mit der 32/64 Bit Platform sein, lass' daher mal die Konfiguration auf 32 Bit stehen. Zur Laufzeit sollte dann die CLR Dein Programm in 64 Bit Code wandeln. Daneben könnte ein Blick ins NX- Logfile helfen, wie in der Fehlermeldung beschrieben. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
christian muc Mitglied Student
Beiträge: 18 Registriert: 20.10.2010 Windows XP 64bit UG NX 7.5
|
erstellt am: 20. Jan. 2011 16:16 <-- editieren / zitieren --> Unities abgeben:
Hallo Michael, nochmal Danke für die Hilfe. Ich habe die Konfiguration auf 32 bit gestellt, das Problem bleibt aber nach wie vor bestehen. Im Log-File steht folgendes:
Code:
The reason C:\VC2010\aa_neu\test\test\bin\x86\Debug\test.dll failed to load was: Cannot classify image C:\VC2010\aa_neu\test\test\bin\x86\Debug\test.dll
Ich möchte Deine Hilfsbereitschaft nicht überstrapazieren, aber könntest Du mir noch eine kleine funktionierende .dll schicken? Damit ließe sich das Problem weiter eingrenzen. Gruß, Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 21. Jan. 2011 08:39 <-- editieren / zitieren --> Unities abgeben: Nur für christian muc
Hallo Christian, mit VB Express 2008 funktioniert der NX-Wizard, worauf ich auch bei Deinem Quellcode tippe. Daher ff. Vorschlag: Entweder weiter mit VS2010 versuchen, d.h. auf DotNet 2.0 einstellen (auf der Seite Projekteigenschaften), die Konfiguration auf Debug/Any CPU und evtl. weitere Projekteinstellungen. Oder, und das halte ich für den sichersten Weg, gleich VBE 2008 verwenden. Damit kannst Du den Wizard nutzen und hast eine funktionierende Vorlage, die Du dann auch mal versuchsweise mit VS2010 öffnen kannst. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
buecherm83 Mitglied Ingenieur IT Application Software
Beiträge: 78 Registriert: 20.09.2011
|
erstellt am: 02. Nov. 2016 12:58 <-- editieren / zitieren --> Unities abgeben: Nur für christian muc
Hallo, ich habe ein ähnliches Problem. Ich habe den Wizard wie beschrieben in alle Verzeichnisse kopiert. Beim Erstellen eines neuen Projektes in VS erhalte ich immer den Fehler: 'Project creation failed'. Ich verwende NX10 mit Visual Studio 12. Ich habe auch schon die verschiedenen Frameworks getestet. Alles führt zur selben Fehlermeldung. Hat jemand eine Idee? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 03. Nov. 2016 09:59 <-- editieren / zitieren --> Unities abgeben: Nur für christian muc
Hallo buecherm83, meine diesbezügliche Empfehlung lautet: Vergiss' die Wizards und zauber' Dir selbst die gewünschten Vorlagen. Das geht einerseits recht schnell, enthält was Du drin haben willst und letztlich kannst Du auch selbst was dran ändern, wenn's notwendig erscheint. Gruß, Michael ------------------ Ein Mensch wird laut, wenn er was will; wenn er's erst hat, dann wird er still; Das "Danke" ist, nach alter Sitte, Weit seltner als das "Bitte, Bitte". Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Klebe Mitglied
Beiträge: 21 Registriert: 26.08.2014
|
erstellt am: 07. Nov. 2016 12:24 <-- editieren / zitieren --> Unities abgeben: Nur für christian muc
Hallo zusammen, ich habe auch meine Probleme mit dem Wizard und möchte mir selbst Vorlagen bauen. Könnt ihr mir einen Tipp dazu geben? Steht einem dann die IntelliSense zur Verfügung. Bin für jede Hilfe dankbar. Viele Grüsse
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Technikerin bzw. Techniker (m/w/d) Fachrichtung Elektrotechnik | Für die Forschungswerkstatt Elektrotechnik an der Technischen Universität Hamburg suchen wir zum nächstmöglichen Zeitpunkt eine*n Techniker*in (m/w/d) Fachrichtung Elektrotechnik Vollzeit/Teilzeit und unbefristet Die Vergütung erfolgt nach Entgeltgruppe 9b TV-L. Kenn-Nr. 3524TFWE Im Mittelpunkt der Forschung, der Lehre und des Technologietransfers der TU Hamburg steht das Leitmotiv, Technik für die Menschen zu entwickeln.... | Anzeige ansehen | Elektrotechnik, Elektronik |
|
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 07. Nov. 2016 18:13 <-- editieren / zitieren --> Unities abgeben: Nur für christian muc
Hallo Klebe, mach' einfach ein Projekt auf, setz' die benötigten Referenzen und sonstigen Einstellungen. Dann mit File-> Export Template speichern. Gruß, Michael ------------------ Ein Mensch wird laut, wenn er was will; wenn er's erst hat, dann wird er still; Das "Danke" ist, nach alter Sitte, Weit seltner als das "Bitte, Bitte". Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |