| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
Autor
|
Thema: Speichern verursacht Memory Access Violation (349 mal gelesen)
|
Eonwe Mitglied
Beiträge: 65 Registriert: 10.11.2014 NX 12 mit ECTR
|
erstellt am: 30. Aug. 2023 17:15 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, vielleicht kann mir ein Experte hier weiterhelfen: Ich habe ein Programm, das abgespeckte Zeichnungen anhand der verfügbaren Hauptzeichnung von vielen Teilen erstellen soll. Dazu wird die Zeichnung kopiert, bearbeitet, abgespeichert und ins PDM-System hochgeladen, dann wird aus einem TXT die nächste Datei ermittelt und genauso bearbeitet. Aufgerufen wird das Programm über einen Blockstyler-Block. Beim Abspeichern der Zeichnung mit
Code: workpart.Save(BasePart.SaveComponents.False, BasePart.CloseAfterSave.False)
kommt nun eine Warnung, dass die Undo-Marks gelöscht wurden (soweit klar) und das Öffnen des nächsten Teils mit Code: Dim secondCheckDrawingPart As Part = CType(theSession.Parts.OpenActiveDisplay(secondCheckDrawingFullPath, DisplayPartOption.AllowAdditional, status), Part)
produziert eine "Memory Access Violation" Wenn ich das Speichern auskommentiere, läuft der Rest vom Code problemlos durch Hat jemand eine Idee, wo das Problem liegen könnte? Das gesamte Programm hat ca 1500 Zeilen, das ist vermutlich nicht sinnvoll hier reinzustellen. Danke schonmal! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2655 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 01. Sep. 2023 14:50 <-- editieren / zitieren --> Unities abgeben: Nur für Eonwe
Hallo Eonwe, das ist nicht so ohne Weiteres zu beantworten ... Passiert das immer oder nur bei bestimmten Parts ? Falls ja, was machen die, wenn interaktiv gespeichert wird ? Gibt's einen Grund, warum das erste Part geöffnet bleibt ? Macht's einen Unterschied, wenn's geschlossen wird ? Was passiert, wenn anstatt OpenActiveDisplay eine andere Methode zum Öffnen verwendet wird ? ... .. 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 selt'ner als das "Bitte, Bitte". Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Klemen Schuessler Mitglied
Beiträge: 2 Registriert: 28.09.2023 NX7.5 bis NX2306
|
erstellt am: 28. Sep. 2023 13:14 <-- editieren / zitieren --> Unities abgeben: Nur für Eonwe
Hallo Eonwe, meiner Erfahrung nach ist das schließen/speichern... öffnen in Kombination mit BlockUIStyler Dialogen nicht so toll, unteranderem wegen dem Undo Speicher. Wenn möglich auf WinForms ausweichen oder speichern/öffnen etc. auslagern, nicht im Dialog aufführen, eventuell für jedes neue Teil den Dialog starten... Ansonsten gibt es erst ab der NX1953 nachfolgende Funktion. theSession.Parts.SetActiveDisplayRetainUndoMarks() In Kombination mit z.B. theUFSession.Part.OpenQuiet() klappt das meiner Erfahrung nach etwas besser mit dem BlockUISytler Dialogen. Grüße, Klemen
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Techniker Elektrotechnik (m/w/d) | Seit über 35 Jahren stellt die etewe passgenaue Lösungen für Prüf- und Automatisierungssysteme im Bereich der Sonderanlagen branchenübergreifend her. Namhafte Kunden und Marktführer vertrauen auf unsere Kompetenz. Wir arbeiten teamorientiert in projektspezifischen Arbeitsgruppen an der Realisierung der Aufgabenstellungen. Die Umsetzung der Projekte erfolgt ganzheitlich von der Konzeption bis zur Inbetriebnahme.... | Anzeige ansehen | Elektrotechnik, Elektronik |
|
Eonwe Mitglied
Beiträge: 65 Registriert: 10.11.2014 NX 12 mit ECTR
|
erstellt am: 28. Sep. 2023 15:51 <-- editieren / zitieren --> Unities abgeben:
Danke für die Hinweise. @Michael: Ja das passiert bei allen Teilen, interaktiv ist alles kein Problem, das hängt irgendwie mit dem BlockStyler zusammen. Offen bleibt das Part, weil es sich vom Programmablauf so ergeben hat, ob ein Schließen was ändert muss ich probieren. Ich hab jetzt das File Handling (speichern und schließen) ganz ans Ende verschoben, dann bricht am Ende des Programms der BlockStyler mit Fehlermeldung zusammen. Da der Durchlauf aber abgeschlossen ist, ist der Zustand erstmal akzeptabel. @Klemen: Um die Fehlermeldung endgültig wegzubekommen, wäre das wohl die einzige Möglichkeit. Vielleicht schaffen wir aber auch nächstes Jahr den Umstieg auf continuous release, so dass ich die neue Funktion nutzen kann. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|