| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY wird von NVIDIA zum Händler des Jahres gewählt – zum dritten Mal in Folge, eine Pressemitteilung
|
Autor
|
Thema: VLisp-Editor / Bei Fehler unterbrechen (1464 / mal gelesen)
|
Bernd10 Mitglied
Beiträge: 763 Registriert: 20.11.2003 Intel(R) Xeon(R) W-2123 CPU @ 3.60GHz 16 GB RAM Windows 10 Pro 64-bit AutoCAD Mechnical 2020 Deu
|
erstellt am: 31. Jan. 2018 10:28 <-- editieren / zitieren --> Unities abgeben:
Hallo, bisher lief meine VLX-Anwendung unter Mechanical 2012. Nun habe ich die Anpassung am Mechanical 2017 soweit abgeschlossen. Mir ist aber noch aufgefallen, dass der Debug-Lauf bei einem Fehler nicht mehr angehalten wird wie bei Mechanical 2012, obwohl ich die entsprechende Auswahl im Menü vom VLisp-Editor getroffen habe (siehe Anlage). In der Anlage ist auch noch eine einfache Funktion, mit der ich das getestet habe. Was muss ich tun, damit der Degug-Lauf bei einem Fehler wieder wie bei Mechanical 2012 angehalten wird? Danke im Voraus und viele Grüße Bernd
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bernd10 Mitglied
Beiträge: 763 Registriert: 20.11.2003 Intel(R) Xeon(R) W-2123 CPU @ 3.60GHz 16 GB RAM Windows 10 Pro 64-bit AutoCAD Mechnical 2020 Deu
|
erstellt am: 01. Feb. 2018 11:14 <-- editieren / zitieren --> Unities abgeben:
Hallo, durch das beschriebene Problem habe ich einen wesentlich größeren Zeitaufwand, um einen Fehler in meinem Programmcode zu finden. Es ist deshalb sehr wichtig für mich, das Problem zu lösen. Kann mir jemand dabei behilflich sein? Danke im Voraus und viele Grüße Bernd
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Meldin Mitglied
Beiträge: 398 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 01. Feb. 2018 11:57 <-- editieren / zitieren --> Unities abgeben: Nur für Bernd10
Also mal so ins blaue da ich dein Prog micht besitze (Mech) aber daran glaube ich liegt es nicht. Dein Muster code ist der gleiche wie in der hilfe zu (*push-error-using-command*). und da liegt der Hund begraben. (/ 2.0 0) ist kein fehler denn hier greif durch (*push-error-using-command*) der *error* ein. Setz mal (setq *error* nil) und minimiere deinen code etwa so (defun myUtil (key / ) (/ 1 0) ) und teste dann mal (MYUTIL "Test") in Acad nicht aus dem VLIDE und siehe was passiert. ------------------ Gruß Wolfgang Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bernd10 Mitglied
Beiträge: 763 Registriert: 20.11.2003 Intel(R) Xeon(R) W-2123 CPU @ 3.60GHz 16 GB RAM Windows 10 Pro 64-bit AutoCAD Mechnical 2020 Deu
|
erstellt am: 01. Feb. 2018 13:46 <-- editieren / zitieren --> Unities abgeben:
Hallo Meldin, danke für Deine Antwort. Zitat: Original erstellt von Meldin:
und teste dann mal (MYUTIL "Test") in Acad nicht aus dem VLIDE und siehe was passiert.
Ich habe nun Deinen Programmcode in eine Lisp-Datei kopiert, diese geladen und in der Befehlsziele in Mechanical 2017 die Funktion entsprechend ausgeführt (siehe Anlage). Dabei passiert dann Folgendes: 1.) Es wird automatisch in den VLisp-Editor gesprungen. 2.) Der Debug-Lauf wird angehalten, wobei ich jetzt noch nicht die fehlerhafte Stelle im Programmcode erkennen kann. 3.) Ich muss dann im VLisp-Editor noch auf die Schaltfläche "Letzte Unterbrechung" klicken, damit er mir an die fehlerhafte Stelle springt. Wenn das so in meinem Umfeld funktionieren würde, wäre das für mich ausreichend, wenn auch etwas anders als in Mechanical 2012. Wie kann ich das erreichen? Viele Grüße Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Meldin Mitglied
Beiträge: 398 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 01. Feb. 2018 19:06 <-- editieren / zitieren --> Unities abgeben: Nur für Bernd10
Hi, also bei mir ist alles genau so daher sollte man auf push und pop verzichten und nur noch comand -S benutzen dann hast du wenigstens die möglichkeit mit Letzte Unterbrechung den fehler zu finden. ------------------ Gruß Wolfgang Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bernd10 Mitglied
Beiträge: 763 Registriert: 20.11.2003 Intel(R) Xeon(R) W-2123 CPU @ 3.60GHz 16 GB RAM Windows 10 Pro 64-bit AutoCAD Mechnical 2020 Deu
|
erstellt am: 02. Feb. 2018 07:25 <-- editieren / zitieren --> Unities abgeben:
Hallo Wolfgang, danke für Deine Antwort. Zitat: Original erstellt von Meldin:
also bei mir ist alles genau so daher sollte man auf push und pop verzichten und nur noch comand[b]-S benutzen dann hast du wenigstens die möglichkeit mit Letzte Unterbrechung den fehler zu finden. [/B]
Nach meinem aktuellen Stand muss ich sogar auf push und pop verzichten, da ich sonst bei jedem meiner Befehle einen "Internal Error..." bekomme, wenn dieser aus meiner VLX-Anwendung heraus verwendet wird. Um command-S habe ich mich bisher noch nicht gekümmert. Müsste ich alle Aufrufe mit command in Aufrufe mit command-S ändern? Viele Grüße Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Meldin Mitglied
Beiträge: 398 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 02. Feb. 2018 08:53 <-- editieren / zitieren --> Unities abgeben: Nur für Bernd10
|
Bernd10 Mitglied
Beiträge: 763 Registriert: 20.11.2003 Intel(R) Xeon(R) W-2123 CPU @ 3.60GHz 16 GB RAM Windows 10 Pro 64-bit AutoCAD Mechnical 2020 Deu
|
erstellt am: 02. Feb. 2018 09:42 <-- editieren / zitieren --> Unities abgeben:
Mein aktueller Stand für mein Umfeld ist jetzt so: 1.) (*push-error-using-command*) und (*pop-error-mode*) nicht verwenden, da ich sonst einen Abbruch mit "INTERNAL error in FAIL\nmessage lost, reset to top" bekomme, wenn ich meinen Befehl aus meiner VLX-Anwendung heraus starte. Außerdem wird bei einem Fehler der Debug-Lauf nicht angehalten/unterbrochen. 2.) Die command-Aufrufe in meinem Programmcode in command-s-Aufrufe ändern, damit die Ausgabe eines Fehlers mit meiner Fehler-Routine noch funktioniert. Bei der Verwendung von command-s-Aufrufen gibt es wohl Ausnahmen, bei denen noch immer die command-Aufrufe zu verwenden sind. Über diese Ausnahmen muss ich mich noch informieren. Danke nochmals für die Hilfe und viele Grüße Bernd
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |