Problemi con nell'uso di un programma esterno

Professione: Pensionato
Software: Autocad
Regione: Lombardia
#1
Salve a tutti,
sto usando con buoni risultati la combinazione di Autolisp con un programma esterno (Liberty Basic) ma, in questo caso, non riesco ad ottenere il risultato voluto :
Codice:
    (setq ColoreLinea "")
    (setq TipoLinea "")

; ----------------------------------------------------------------------------------------

    (startapp "C:\\AutocadSupporto\\Liberty\\Contorno.exe " "C:\\AutoCadSupporto\\Liberty\\Contorno.tkn")

; ----------------------------------------------------------------------------------------

    (setq Controllo1 nil)
    (while (= Controllo1 nil)
        (setq Controllo1 (findfile "C:\\AutocadSupporto\\Contorni\\Contorno.dat"))
    )

    (princ "\n")
    (princ Controllo1)
    (princ "\n")

    (if (= Controllo1 "C:\\AutocadSupporto\\Contorni\\Contorno.dat")
        (progn
            (setq fp4 (open "C:\\AutocadSupporto\\Contorni\\Contorno.dat" "r"))
                (setq ColoreLinea (read-line fp4))
                (setq TipoLinea (read-line fp4))
            (close fp4)
        )     
    )

    (princ"\n")
    (princ "\n---------------------------------------------------------------")
    (princ ColoreLinea)
    (princ "\n---------------------------------------------------------------")
    (princ TipoLinea)
    (princ "\n---------------------------------------------------------------")
    (princ"\n")
Il programma "Contorno.exe" riceve l'input dei dati relativi a "ColoreLinea" e "TipoLinea" e li salva in "C:\\AutocadSupporto\\Contorni\\Contorno.dat".
Una volta trovato questo file, Autolisp lo dovrebbe aprire ed estrarre le variabili.
Posto che il file "C:\\AutocadSupporto\\Contorni\\Contorno.dat" viene prodotto, le variabili non vengono estratte credo, per un problema di sincronismo.
Cosa posso fare per evitare che Autolisp arrivi magari prima e non trovi i dati pronti da estrarre?
Oppure c'è un errore così macroscopico che, a furia di guardarlo, non riesco a trovare?
Grazie.