OpenDCL Forums

OpenDCL => Localization Project => GERMAN => Topic started by: OPLisp on September 20, 2013, 05:50:46 AM

Title: Can't reenter LISP
Post by: OPLisp on September 20, 2013, 05:50:46 AM
Hallo zusammen,


untenstehende Lisp routine prg führt zur Fehlermeldung:  Can't reenter LISP.
Das Programm ist verkürzt wieder gegeben. Tatsächlich erfolgt das Laden der OPENDCL Umgebung
nur, wenn diese noch nicht geladen war.
Der Fehler wird aber damit ausgelöst, daß der Ladevorgang und der Einfüge Befehl sich in einer Lisp routine befinden.
Ich verwende AutoCAD 2013. Den Fehler habe ich erst ab OpenDCL.Runtime.7.0.0.12 festgestellt.
In früheren Versionen war er nicht vorhanden.
Umgehen kann man den Fehler nur, wenn man den Ladevorgang (z.B. in acaddoc.lsp) und den Einfüge Befehl trennt.



(defun c:prg ()

(command "_OPENDCL")
; ..
; ..
(setq einpkt (getpoint "\nInsertion point: "))   
(command "_INSERT" "Block" einpkt "" "" "")
)


Command: PRG
OpenDCL Laufzeitumgebung [7.0.0.14] wurde geladen
Insertion point:
Can't reenter LISP.
Invalid point.
Insertion point: nil
Title: Re: Can't reenter LISP
Post by: OPLisp on September 20, 2013, 05:56:23 AM
Hallo nochmal!

Der Fehler wird durch folgende Kombination ausgelöst. Insert spielt keine Rolle.

(defun c:prg ()

  (command "_OPENDCL")
; ..
; ..
  (setq einpkt (getpoint "\nInsertion point: "))
)

Grüße
Title: Re: Can't reenter LISP
Post by: Peter2 on September 20, 2013, 01:53:55 PM
Ich vermute, da ist vielleicht irgendeine Funktion doppelt definiert. Einerseits haben die beiden Zeilen mit OpenDCL nichts zu tun (ausser dem Laden), und ich habe den Code bei mir (Win 7 64 / 2011) problemlos ausgeführt.

Vorschlag:
a) Nimm einmal (command "_opendcl") aus dem Code und schaue was passiert.
b) Benenne das Programm um in "c:hallo". "prg" könnte schon belegt sein.
c) Stelle sicher, das kein anderes Programm offen ist (Wird prg von einem anderen Lisp gestartet? Hängt irgendetwas aus der Startgruppe?)
Title: Re: Can't reenter LISP
Post by: Fred Tomke on September 22, 2013, 01:22:02 PM
Hi, die letzte Version, die ich genutzt habe ich Version 7.0.0.9, was durch meine Zuarbeiten für einen früheren Arbeitgeber begründet ist.
Das könnte ich morgen abend testen, jetzt habe ich grad kein AutoCAD hier.

VG, Fred
Title: Re: Can't reenter LISP
Post by: OPLisp on September 23, 2013, 12:10:58 AM
Hallo Peter2

b) und c) kann ich ausschliessen.
Bei a) ist zu sagen, dass der Fehler nur eintritt wenn OpenDCL wirklich
geladen wird. Also, beim zweiten Aufruf prg ist alles in Ordnung.
Vielleicht laedst du OpenDCL schon vorher irgendwo zentral.


Hallo Fred

der Fehler war  in der Version 7.0.0.7 noch nicht vorhanden.

Danke fuer Eure Mitarbeit!