| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | | | Request a special discount on NVIDIA RTX 5000 Ada Generation GPU !, eine Pressemitteilung
|
Autor
|
Thema: Max. Länge einer Variable (646 mal gelesen)
|
Peter2 Ehrenmitglied V.I.P. h.c.
Beiträge: 3849 Registriert: 15.10.2003
|
erstellt am: 24. Sep. 2004 15:21 <-- editieren / zitieren --> Unities abgeben:
Ich weise mit "setq" einer Variable (ja, ich weiss, das sollte anders heissen) einen elend langen Dateipfad plus Dateinamen zu: (setq meinpfad "d:\\djdd\3283344734\fdljslj\Projekt_X\\") Die Länge des Pfades übersteigt schon 140 Zeichen, und da scheint ein Problem zu liegen. "Meinpfad" ist zwar korrekt, aber damit öffne ich eine Datei (open meinpfad "r") - und er liest die Datei nicht, bringt aber keine Fehlermeldung. Das Programm selbst und die zu lesende Datei sind in Ordnung, weil wenn der Pfad kürzer wird, passt alles. Kann man Lisp auch dazu bringen, auch diese elends langen Zeichenketten zu verstehen (bei der Edit_Box gibts das ja) Danke Peter ------------------ Für jedes Problem gibt es eine einfache Lösung. Die ist aber meistens falsch. ;-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dabrunz Mitglied
Beiträge: 127 Registriert: 28.05.2003
|
erstellt am: 24. Sep. 2004 17:24 <-- editieren / zitieren --> Unities abgeben: Nur für Peter2
Hi Peter. Ich fürchte, du musst dein Problem noch einmal etwas konkretisieren, denn an der Länge des Dateinamens liegt es bei unter 255 Zeichen nicht. Das klappt ganz prima, ich hab's gerade mit diser Datei ausprobiert: "D:\Dokumente und Einstellungen\dabrunz\Anwendungsdaten\Autodesk\AutoCAD 2005\R16.1\enu\Support\Profiles\PLANX-Entw\und-jetzt-werden-nocheinmal-weitere-67-Zeichen-hinzu-getan\5.txt" und das wären ja schon einmal 179 Zeichen. Sollte aber das von dir aufgeführte Beispiel nicht nur so dahin geschrieben sein, sondern - auch oder gerade wegen des Wertes von <meinpfad> - echt sein, dann liegt's daran, dass es eben kein Dateiname ist, sodern ein Verzeichnis-Name und sowas lässt sich ganz sicher nicht mit open öffnen .. Achim Dabrunz ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADwiesel Moderator CAD4FM UG
Beiträge: 1989 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 24. Sep. 2004 21:31 <-- editieren / zitieren --> Unities abgeben: Nur für Peter2
|
Peter2 Ehrenmitglied V.I.P. h.c.
Beiträge: 3849 Registriert: 15.10.2003
|
erstellt am: 24. Sep. 2004 22:37 <-- editieren / zitieren --> Unities abgeben:
Guten Abend ich gebe es zu: ich hätte etwas präziser schreiben sollen und das Beispiel mit meinpfad war unschön, aber das war in etwas Zeitnot .. Um was geht es: 1) Ich wähle mit "getfiled" eine Datei (im konkreten eine TXT-Datei) und schreibe ihren Pfad und Namen in eine ASCII-Datei (meine Grundeinstellungen). Damit ist die Information dauerhaft gespeichert. 2) Die ASCII-Datei wird immer wieder gelesen; damit weiss AutoCAD, was ich irgendwann mit getfiled gewählt habe. 3) Ich starte mein Programm - das öffnet die TXT-Datei und arbeitet damit. 1 bis 3 ist klar und funktioniert gut, aber heute hat ein Mitarbeiter die TXT-Datei in einer einer sehr grossen Pfad-Tiefe gespeichert. Schritte 1 und 2 funktionieren auch noch, aber bei Schritt 3 (eben der "open" Befehl) hat es anscheinend etwas. Er macht einfach nichts .... Wenn ich diese TXT-Datei aber ein Verzeichnis weiter oben speichere (gleicher Dateiname, gleicher Inhalt, gleiches Programm, aber ein um 10 Zeichen kürzerer Pfad ...) dann läuft die Sache wie gewohnt. Da aber laut Achim die Pfad- bzw. Namenslänge nicht das Problem sein dürfte, werde ich nächste Woche den Code Stück für Stück auseinandernehmen. Danke und schönes Wochenende Peter ------------------ Für jedes Problem gibt es eine einfache Lösung. Die ist aber meistens falsch. ;-) [Diese Nachricht wurde von Peter2 am 24. Sep. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fuchsi Mitglied Programmierer c#.net Datawarehouse
Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 27. Sep. 2004 08:16 <-- editieren / zitieren --> Unities abgeben: Nur für Peter2
mir ist beim lisp-befehl open auch mal aufgefallen, dass er bei langen pfadnamen , die leerzeichen,äöüß usw. beinhalten manchmal probleme hat. Solche Pfade sollte man sowiso generell vermeiden. Leider wird die Verzeichnisstruktur, und damit der Explorer als kleine Projektverwaltung missbraucht. Und damit erhält man oft solche irrsinnigen Pfadangaben. ------------------ WWW.FFZELL.AT.TC Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dabrunz Mitglied
Beiträge: 127 Registriert: 28.05.2003
|
erstellt am: 27. Sep. 2004 09:12 <-- editieren / zitieren --> Unities abgeben: Nur für Peter2
Kannst vielleicht einmal den vollständigen Dateinamen mit dem es nicht klappt hierdirekt angeben? Weiterhin wäre noch von Interesse: (a) Dateisystem (b) Netzwerkpfad? (c) wenn (a) es zulässt - stimmen die Rechte? (Verzeichnis, Datei und falls (b) Freigabe) Nur so ein paar Gedanken auf Geradewohl .. Achim Dabrunz ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dabrunz Mitglied
Beiträge: 127 Registriert: 28.05.2003
|
erstellt am: 27. Sep. 2004 09:34 <-- editieren / zitieren --> Unities abgeben: Nur für Peter2
Wie ich zum wiederholten Male feststelle ist's mitunter ganz hilfreich, ab und an <strg>+r zu drücken, dann entgehen mir auch die aktuellen Beiträge nicht .. Zitat: mir ist beim lisp-befehl open auch mal aufgefallen, dass er bei langen pfadnamen , die leerzeichen,äöüß usw. beinhalten manchmal probleme hat.
Das ist mir definitiv noch nicht aufgefallen! Wenn's da mal Probleme gab, dann waren die immer auf anderweitige (ich will mal vorsichtig sein) Missverständnisse zurück zu führen - mein Lieblings-Fehler ist die unterschiedliche Behandlung von Verzeichnissen, die nur aus Laufwerks-Buchstaben bestehen. Zur Sicherhaeit hab ich aber auf die schnell noch einmal ein paar Experimente gemacht. Hier eines davon, sozusagen als Update des letzten: "D:\\Dokumente und Einstellungen\\dabrunz\\Anwendungsdaten\\Autodesk\\AutoCAD 2005\\R16.1\\enu\\Support\\Profiles\\PLANX-Entw\\und-jetzt-werden-nocheinmal-weitere-72-Zeichen-hinzu-getan äöüß\\5.txt" Was wir jetzt bräuchten, wäre ein vollständig qualifizierter Pfad, mit dem OPEN nicht funktioniert. Zitat: Solche Pfade sollte man sowiso generell vermeiden.
Dachte ich auch mal, ist aber - wie ich zugeben musste - Administrator- oder Technikerinnen-Sicht. User sehen das anders, insbes., weil Windows das auch anders sieht. Letzten Endes müssen wir unsere Programme an die Benutzer-Bedürfnisse anpassen. Die umgekehrte Richtung ist definitiv passé. Zitat: Leider wird die Verzeichnisstruktur, und damit der Explorer als kleine Projektverwaltung missbraucht. Und damit erhält man oft solche irrsinnigen Pfadangaben.
Das ist für mich kein Missbrauch, sondern hat mit strukturierter Arbeit ohne Zusatzmittel zu tun - wenn ich da an Arbeitweisen denke, wo alles in Eigene Dateien geschmissen wird, stellt sich mir die Körperbehaarung auf. Allerdings sollten sich die AnwenderInnen der möglichen Probleme bewusst sein, denn mehr als 255 Zeichen is' net. Achim Dabrunz ------------------ [Diese Nachricht wurde von Dabrunz am 27. Sep. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|