Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Problem mit getfiled

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Problem mit getfiled (692 mal gelesen)
-ikarus-
Mitglied
Zeichner


Sehen Sie sich das Profil von -ikarus- an!   Senden Sie eine Private Message an -ikarus-  Schreiben Sie einen Gästebucheintrag für -ikarus-

Beiträge: 142
Registriert: 12.02.2007

ACAD 2015,PSP 2011, Showcase 2015, Mudbox 2015
Indesign CC, Illustrator CC, Photoshop CC, After Effects CC, Premiere Pro CC, Edge Animate CC, Acrobat DC Pro mit PitStop Pro,
Visual Studio 2013
Notepad++
Rechner: HP Z620 Workstation
NVIDIA Quadro K4000

erstellt am: 14. Apr. 2016 16:58    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

ich finde nicht die richtig Lösung, vielleicht hat jemand eine Idee?

Code:

(Setq TD-SUPPORTPFAD  "D:\\")

(defun c:PDFplot (/)

(c:zwab);Text in die Zwischenablage
(Plottdialog)

(if (/= asset nil)
(progn
(setq fenster1 (getpoint "\nUntere linke Ecke des Fensters angeben: "))
(setq fenster2 (getpoint "\nObere rechte Ecke des Fensters angeben: "))
(vl-cmdf "-plot" "J" "Modell" "AutoCAD_PDF.pc3" "PostScript (220.00 x 303.00 mm)" "M" "H" "N" "F" fenster1 fenster2 "1=5" "Z" "J" "adobe-pdf-2012.ctb" "J" "D" asset "N" "J" )
)
)

)

;_____________________________________________________________
(defun Plottdialog (/)
(setq inifile (strcat TD-SUPPORTPFAD "asset_pfad.INI" ))
(if (findfile inifile)
(progn
(princ (strcat "\nDatei <" inifile "> vorhanden."))
)
(progn
(setq file (OPEN inifile "w"))
(WRITE-LINE "[asset_pfad.INI - Variablen]" file)
(WRITE-LINE "[im Supportordner <text Indesignplot.lsp>]" file)
(WRITE-LINE (strcat "[Bearbeiter: " (strcase (getvar "loginname")) "]" ) file)
(WRITE-LINE (strcat "asset_pfad=" "nil" ) file )
(CLOSE file)
)
)

(setq inifile (OPEN inifile "r"))
(setq attribs (READ-LINE inifile))
(while attribs
(if (/= nil (setq position (vl-string-search "=" attribs)))
(progn
(setq befehl (substr attribs 1 Position))
(setq wert (substr attribs (+ 2 position)))
(set (read befehl) wert)
(princ attribs)
)
(princ "\tIn dieser Zeile sind keine Variablen vorhanden!" )
)
(setq attribs (read-line inifile))
) ; End While
(CLOSE inifile)

(if (= asset_pfad "nil" ) (setq asset_pfad nil ))
(if (not asset_pfad) (setq asset_pfad (strcat (getvar "MYDOCUMENTSPREFIX") "\\")) (princ asset_pfad))
(setq asset (strcat asset_pfad Inhalt ))
(setq asset (getfiled "PDF-Datei speichern unter" asset "pdf" 1))
(if (/= asset nil)
(setq asset_pfad (substr asset 1 (- (strlen asset) (strlen Inhalt))))
)

(setq acro (vlax-get-or-create-object "AcroExch.App"))
(vlax-invoke acro 'CloseAllDocs )
;(vlax-invoke-method acro 'Quit)

(setq inifile (strcat TD-SUPPORTPFAD "asset_pfad.INI" ))
(setq file (OPEN inifile "w"))
(WRITE-LINE "[asset_pfad.INI - Variablen]" file)
(WRITE-LINE "[im Supportordner <text Indesignplot.lsp>]" file)
(WRITE-LINE (strcat "[Bearbeiter: " (strcase (getvar "loginname")) "]" ) file)
(WRITE-LINE (strcat "asset_pfad=" asset_pfad ) file)
(if (/= asset nil)
(WRITE-LINE (strcat "PDF_asset=" asset ) file)
)
(CLOSE file)

)

;_________________________________________________________________
(defun c:zwab ( / )
(setq arxfile (strcat TD-SUPPORTPFAD TD-DOSLib ))
(if (null dos_clipboard )
(progn
(if (findfile arxfile)
(progn
(princ (strcat "\nDatei <" arxfile "> vorhanden.\n"))
(arxload TD-DOSLib )
)
(progn
(setq notfile (strcat "\nkonnte Datei <" arxfile "> nicht laden/fingen.\n"))
(princ notfile )
(alert notfile )
)
)
)
(progn (princ "\nBefehl <dos_clipboard> wird ausgeführt!\n" ) (princ))
)

(setq text (car (entsel "\nBitte auszulesenden Text wählen:")))
(setq inhalt (cdr (assoc 1 (entget text ))))
(setq str (strcat inhalt ))

(princ "\nText: ")(princ str)
(dos_clipboard str )

) ; Ende vom defun zwab


Das Problem, ich erstelle mit der Lisp PDFs über plotten jetzt hab ich das Problem mit getfiled, dass wenn die PDF mit dem Namen schon existiert und im Acrobat geöffnet ist, dann kommt keine Meldung das die Datei geöffnet ist, sondern ACAD versucht sie zu plotten. Im Netz habe ich gefunden, dass man PDFs über die Funktion (setq acro (vlax-get-or-create-object "AcroExch.App"))(vlax-invoke acro 'CloseAllDocs ) alle offene PDFs schließen kann. So funktioniert es auch, mir wäre allerdings die Warnmeldung lieber.

Hat jemand eine Lösung für dieses Problem?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 14. Apr. 2016 19:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für -ikarus- 10 Unities + Antwort hilfreich

Die Lösung mit dem schließen geht ja auch nur wenn die Datei
a) auf deinem Rechner auf ist
b) die Datei mit dem entsprechenden Programm geöffnet wurde, richtig?

Du kannst versuchen die Datei zum Schreiben zu öffnen, wenn das nicht geht: Meldung

Funktion OPEN zum Beispiel

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

-ikarus-
Mitglied
Zeichner


Sehen Sie sich das Profil von -ikarus- an!   Senden Sie eine Private Message an -ikarus-  Schreiben Sie einen Gästebucheintrag für -ikarus-

Beiträge: 142
Registriert: 12.02.2007

ACAD 2015,PSP 2011, Showcase 2015, Mudbox 2015
Indesign CC, Illustrator CC, Photoshop CC, After Effects CC, Premiere Pro CC, Edge Animate CC, Acrobat DC Pro mit PitStop Pro,
Visual Studio 2013
Notepad++
Rechner: HP Z620 Workstation
NVIDIA Quadro K4000

erstellt am: 14. Apr. 2016 20:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Meinst du das so mit open:

(setq file (OPEN asset "a" ))
(if (not (write-line "Text"))
    (setq geoeffnet 'T)
    (setq geoeffnet nil)
)
(CLOSE file)

[Diese Nachricht wurde von -ikarus- am 14. Apr. 2016 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

Alles

erstellt am: 14. Apr. 2016 21:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für -ikarus- 10 Unities + Antwort hilfreich

Das Open reicht, wenn es klappt, Datei wieder schliessen,
ansonsten Meldung.

Ja, so dachte ich es mir (nur das write ist schlecht und überflüssig)
Teste es.

(if (setq file (OPEN asset "a" ))
(CLOSE file)
(alert "Husten, wir haben ein Problem")
)

Gibt aber auch noch schönere Wege zum prüfen der Schreibrechte, aber das war gerade der einfachste zum tippen, lach.

Such doch mal nach geöffnet Datei oder Schreibschutz etc. Gibt es sicher Treffer dazu.

------------------
CAD on demand GmbH - Beratung und Programmierung rund um AutoCAD

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

-ikarus-
Mitglied
Zeichner


Sehen Sie sich das Profil von -ikarus- an!   Senden Sie eine Private Message an -ikarus-  Schreiben Sie einen Gästebucheintrag für -ikarus-

Beiträge: 142
Registriert: 12.02.2007

ACAD 2015,PSP 2011, Showcase 2015, Mudbox 2015
Indesign CC, Illustrator CC, Photoshop CC, After Effects CC, Premiere Pro CC, Edge Animate CC, Acrobat DC Pro mit PitStop Pro,
Visual Studio 2013
Notepad++
Rechner: HP Z620 Workstation
NVIDIA Quadro K4000

erstellt am: 14. Apr. 2016 21:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hab hier kein Autocad, ich teste es morgen gleich.
Danke

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

-ikarus-
Mitglied
Zeichner


Sehen Sie sich das Profil von -ikarus- an!   Senden Sie eine Private Message an -ikarus-  Schreiben Sie einen Gästebucheintrag für -ikarus-

Beiträge: 142
Registriert: 12.02.2007

ACAD 2015,PSP 2011, Showcase 2015, Mudbox 2015
Indesign CC, Illustrator CC, Photoshop CC, After Effects CC, Premiere Pro CC, Edge Animate CC, Acrobat DC Pro mit PitStop Pro,
Visual Studio 2013
Notepad++
Rechner: HP Z620 Workstation
NVIDIA Quadro K4000

erstellt am: 15. Apr. 2016 09:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hat so funktioniert vielen Dank

Gruß Jürgen

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz