Moin !
das ist die Richtung in die ich wollte.
Bei mir hat es auf Anhieb nicht funktioniert und erst als ich aus SUBR -> USUBR gemacht habe hat es mit MEINEFUNC bei mir (Map 2015) funktioniert.
Nun hatte ich von Anfang eines verheimlicht. Es geht um Befehle die von einer DLL über die Befehlszeile zur Verfügung gestellt werden. Vom Grundsatz hatte ich mir gedacht, dass dieses dasselbe sein müsste. Ist aber wohl nicht ganz so. Mit MEINEFUNC hat es geklappt. Mit dem DLL-Befehl allerdings nicht. (im übrigen mit den Standardbefehlen - hier PLINE als Test - auch nicht!) Daraufhin habe ich einige Ausgabe eingefügt:
Code:
(defun TESTFUNC(FUNCNAME)(princ "\ntype: ")(princ (type FUNCNAME))
(princ "\ntype2: ")(princ (type(eval(setq FUNCNAME(read FUNCNAME)))))
(if(or(=(type FUNCNAME) 'USUBR)
(and(=(type FUNCNAME)'STR)(=(type(eval(setq FUNCNAME(read FUNCNAME))))'USUBR))
)
Hier die Testwerte:
Zitat:
Befehl: (TESTFUNC "C:MEINEFUNC")
vorhanden..
Alles klaro
Befehl: (TESTFUNC "C:MEINEFUNC2")
Funktion : C:MEINEFUNC2 nicht vorhanden.nil
Befehl: (TESTFUNC "C:MEINEFUNC2")
type: STR
type2: nil
Funktion : C:MEINEFUNC2 nicht vorhanden.nil
Befehl: (TESTFUNC "C:EBL_Optionen")
type: STR
type2: nil
;; einfach mal so eingeben ...
Funktion : C:EBL_OPTIONEN nicht vorhanden.nil
;; nachfolgender Aufruf funktioniert ..
Befehl: EBL_OPTIONEN
Befehl: (TESTFUNC "EBL_Optionen")
type: STR
type2: nil
Funktion : EBL_OPTIONEN nicht vorhanden.nil
Befehl: (TESTFUNC "C:Plinie")
type: STR
type2: nil
Funktion : C:PLINIE nicht vorhanden.nil
Befehl: (TESTFUNC "Plinie")
type: STR
type2: nil
Funktion : PLINIE nicht vorhanden.nil
Hat einer eine Idee und ist da vielleicht ein Unterschied in den Befehlen ..... ?
Gruß Jan
------------------
jan :-)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP