PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Chaos in den Dateinamen



fredyxx
29.09.2016, 12:06
Hallo,

nach dem ich eine funktionsfähige Programmversion fertig hatte, habe ich die mit Speichern gesichert. Diese hatte den Name "LKW_beladen".

Dann habe ich die mit Speichern unter und dem Namen "LKW_beladen_funktionsfähig.ino" gespeichert, um für den Fall, dass ich bei nicht funktionierenden Programmerweiterungen, wieder mit einer funktionierenden Version starten kann.

"LKW_beladen" habe ich dann den Ordner und die Datei in "LKW_beladen_Fortsetzung.ino" umbenannt und mit der weiter gearbeitet.

Nach einigen kleinen Änderungen stimmte plötzlich die Reihenfolge der UP/Funktionen nicht mehr, die vorher vom Kompiler nicht angemeckert wurde. Bei dem Versuch das durch Umordnung zu korrigieren ist dann der Fall eingetreten, dass ich mit "LKW_beladen_funktionsfähig.ino" neu beginnen wollte.

Dann habe ich erst mal alles beendet und geschlossen.

Jetzt wird es leider kompliziert:

Bei dem Versuch "LKW_beladen_Fortsetzung.ino" noch mal zu öffnen kam diese Meldung:

32070

Warum die kommt ist mir schon nicht klar. Ich meine der Dateinamen ist ok und wieso bezieht die sich auf "LKW_beladen_funktionsfähig.ino"?

Die Datei öffnete aber trotz der Fehlermeldung mit dem Namen "LKW_beladen_Fortsetzung.ino"

Dann der Versuch "LKW_beladen_funktionsfähig.ino" zu öffnen mit dieser Reaktion:

32071

Dann noch die Meldung "Der Sketch konnte nicht angelegt werden" und es öffnet sich ein leerer Sketch!!! :(


Was habe ich da falsch gemacht? Ich habe schon öffter Ordner- und Dateinamen im Explorer umbenannt und keine Probleme gehabt.

Habe ich noch eine Chance den "LKW_beladen_funktionsfähig.ino" zu retten?

vG

fredyxx

Ceos
29.09.2016, 12:43
EDIT: Prüfe ob sowohl Ordnername als auch enthaltene Dateinamen geändert sind und Update unbedingt deine Arduino IDE, du scheinst eine extrem veraltete Version zu benutzen

PS: Respekt wiederhergestellr ... teilweise ... der IDE Quellcode sieht etwas murksig aus ... wenn cih genügend Freizeit hätte würde ich ganze Passagen davon mal überarbeiten wollen XD


mit Umlaut speichern erlauben aber beim laden dann rummeckern XD da hat wohl ein Techniker programmiert XD
(edit nur um missverständnissen vorzubeugen, ich meine den programmierer des editor)

kannst du die ino Datei im notepad öffnen und sinnvoll lesen ? Dann such nach dem Umlaut und schmeiss ihn raus :)

Kommando zurück, hast du sowohl beim Ordnernamen als auch der Datei den Umlaut entfernt ?

in der aktuellen Version werden umlaute einfach durch tiefstriche ersetzt .... lame

ohgott jetzt wirds peinlich, das tool ist mit java geschrieben und DANN keine umlaute unterstützen ?


ich verliere gerade jeden respekt für arduino, gibt es da nicht profesionellere kostenlose werkzeuge die schnell zu installieren sind ?

fredyxx
29.09.2016, 13:40
Hallo,

ich habe das Programm so retten können:

ino-Datei in eine txt-Datei umbenannt und mit dem Texteditor geöffnet. Gesamten Text markiert, kopiert und in ein neues, leeres Arduino - Programm ganz vorne eingefügt. Die hinten befindlichen, standardmäßig vorhandenen SETUP und LOOP gelöscht und die Welt ist wieder i.O..

In dem gesamten Text findet sich übrigens nirgendwo der Dateinamen "LKW_beladen_funktionsfähig.ino"


Trotzdem bleiben für mich die Fragen: was habe ich falsch gemacht und wie kopiere ich ein Programm, ohne dass das eine mit dem andern zusammenhängt?

Nun wollte ich gerade noch was zu dem Dateinamen schreiben, da fällt mir jetzt erst auf, dass ich ja in funktionsfähig einen Umlaut habe. Asche auf mein Haupt!!

Nach der Änderung von ä auf ae lässt sich "LKW_beladen_funktionsfaehig.ino" öffnen und ebenfalls "LKW_beladen_Fortsetzung.ino", in dem aber kein Umlaut ist. Was hat das Eine mit dem Andern zu tun?

Ich habe das noch mal rekonstruiert und es ist tatsächlich so:
wenn ich das ä bei funktionsfähig wieder einsetze und die Datei "LKW_beladen_Fortsetzung.ino" öffnen will, kommt die o.a. Fehlermeldung zu "LKW_beladen_funktionsfähig.ino" !!!!!!!!!!!

vG

fredyxx

Ceos
29.09.2016, 14:06
ich hab mir die Histroy angesehen von der IDE, du musst dringend updaten, deine Version scheint ewig veraltete zu sein, die aktuelle Version ersetzt illegaöe Zeichen beim speichern durch tiefstriche "_" und in der IDE ist außerdem in der vorletzten Version ein Bug behoben worden, wo der Titel sich nach dem Umbenennen nicht aktualisiert.

1.16.13 ist glaueb die aktuelle Version wenn ich mich nicht verguckt habe

i_make_it
29.09.2016, 14:47
1.16.12 ist die neuste Version.
Unabhängig von Bugs etc. verwaltet Arduino im Sketchbook die Dateien selbst.
Es gibt sogar ein Tutorial "Understanding the Arduino Sketchbook".
https://programmingelectronics.com/understanding-the-arduino-sketchbook-opening-and-saving-arduino-sketches/
https://www.youtube.com/watch?v=xM7AK7R51zQ

fredyxx
29.09.2016, 15:13
Hallo,

nun habe ich die 1.16.12 installiert und neuen Ärger!!!

Ich bekomme einen primitiven Sketch nicht mehr auf mein Mega-Board geladen.

Das sind die Einstellungen und COM6 ist ok.

32072

und das die Fehlermeldung:



Der Sketch verwendet 1.554 Bytes (0%) des Programmspeicherplatzes. Das Maximum sind 253.952 Bytes.
Globale Variablen verwenden 9 Bytes (0%) des dynamischen Speichers, 8.183 Bytes für lokale Variablen verbleiben. Das Maximum sind 8.192 Bytes.
java.io.IOException: Cannot run program "___REMOVE___/bin/avrdude": CreateProcess error=2, Das System kann die angegebene Datei nicht finden
at java.lang.ProcessBuilder.start(ProcessBuilder.java :1048)
at processing.app.helpers.ProcessUtils.exec(ProcessUt ils.java:26)
at cc.arduino.packages.Uploader.executeUploadCommand( Uploader.java:129)
at cc.arduino.packages.uploaders.SerialUploader.uploa dUsingPreferences(SerialUploader.java:206)
at cc.arduino.UploaderUtils.upload(UploaderUtils.java :78)
at processing.app.SketchController.upload(SketchContr oller.java:707)
at processing.app.SketchController.exportApplet(Sketc hController.java:680)
at processing.app.Editor$DefaultExportHandler.run(Edi tor.java:2176)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: CreateProcess error=2, Das System kann die angegebene Datei nicht finden
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java :1029)
... 8 more
Beim Hochladen des Sketches ist ein Fehler aufgetreten

Ich kann da nur erkennen, dass ein Programm "avrdude" vermisst wird.
Ein "avrdude.exe" befindet sich aber bei mir in einem Ordner : C:\eigeneProgramme\Arduino\hardware\tools\avr\bin

Könnt ihr da mehr draus erkennen?

vG

fredyxx

HaWe
29.09.2016, 16:33
normalerweise ist der Arduino-Ordner nicht in "C:\eigeneProgramme" sondern liegt in
C:\Programme\Arduino\...
oder
C:\Programme (x86)\Arduino\...
oder
C:\Program Files (x86)\Arduino\...

Wenn das bei dir anders ist, dann würde ich alles erst mal komplett deinstallieren und komplett neu installieren, am besten als administrator per Installationsprogramm.

fredyxx
29.09.2016, 16:59
normalerweise ist der Arduino-Ordner nicht in "C:\eigeneProgramme" sondern liegt in
C:\Programme\Arduino\...
oder
C:\Programme (x86)\Arduino\...
oder
C:\Program Files (x86)\Arduino\...

Wenn das bei dir anders ist, dann würde ich alles erst mal komplett deinstallieren und komplett neu installieren, am besten als administrator per Installationsprogramm.


Ich lege alle Programme, die ich nach dem Notebook-Kauf installiert habe auf "C:\eigeneProgramme" und hatte damit noch nie Probleme. Auch die alte Arduinoversion lag dort, hat funktioniert und wurde dort auch von der Neuinstallation sofort als Vorgängerversion erkannt.

Die neue Installation hat das auch sofort als Installationsordner angeboten.

HaWe
29.09.2016, 17:06
kA was früher war und was jetzt ist -
aber wenn es nicht an Fehlern liegt, die man schon ausschließen konnte, muss an Fehlern liegen, die man bisher nicht ausschließen konnte... 8)

fredyxx
29.09.2016, 17:56
Nachdem ich die Version 1.6.7 noch mal installiert habe, und diese sofort funktionierte, habe ich es noch mal mit der 1.6.12 versucht.
Aber ohne Erfolg.
Auch die Installation in Programme(x86) hat da nichts verbessert.

Also bleibe ich zunächst bei 1.6.7!

Vielleicht kann aber doch noch jemand der obigen Fehlermeldung eine hilfreiche Info entnehmen. Dann werde ich es gerne noch mal probieren.

Oder ist es möglich, dass sich WIN 10 mit 1.6.12 noch nicht verträgt????

vG

fredyxx

Peter(TOO)
29.09.2016, 18:22
Hallo,

Nach der Änderung von ä auf ae lässt sich "LKW_beladen_funktionsfaehig.ino" öffnen und ebenfalls "LKW_beladen_Fortsetzung.ino", in dem aber kein Umlaut ist. Was hat das Eine mit dem Andern zu tun?
Nun, bei schlechter Programmierung kann das schon vorkommen!

Vermutlich liegt das Problem daran, dass die IDE eine Liste mit den Dateinamen übergeben bekommt. Stösst dann die Routine auf einen Umlaut, flippt sie aus :-(

Die ganz alten Hasen kennen das Problem noch und vermeiden instinktiv Umlaute in Dateinamen.

Ursprünglich kamen Betriebssysteme, Compiler usw. hauptsächlich aus den USA. Die Amis verwenden den US-ASCII-Zeichensatz, da gibt es keine Umlaut und 7 Bit reichen für die Darstellung aus. Irgendwann lies dann auch MS-DOS Sonderzeichen in Dateinamen zu, aber die meiste Software konnte damit nicht umgehen :-(

Ende der 80er Jahre verwendete ich X.400 (in D als Telebox400 oder BusinessMail X.400 vermarktet), das war eine Art Konkurrenz zum Internet, als dieses noch gar nicht öffentlich zugänglich war, und für geschäftlich Datenübertragung durch die CCITT (heute ITU) genormt. Ich musste öfters Binär-Dateien aus Kanada runter laden (QNX). Das scheiterte aber öfters daran, weil ein US-Knoten die Daten nur als 7-Bit Werte weiterleitete.
Ich hatte dann öfters Sessions mit der Technik der PTT. Die konnten dann zwar feststellen, welcher Server das Problem verursachte, aber es gab noch keine internationale Zusammenarbeit. Es gab also keine Möglichkeit den zuständigen Admin zu benachrichtigen :-( Der Dienstweg wäre von Basel über Bern an die Oberpostdirektion in Kanada zum zuständigen Admin gegangen, damit der von 7-Bit wieder auf 8-Bit umstellt :-(
Praktisch musste man dann meist wochenlang versuchen, bis das umgestellt wurde.

Aber auch heute ist es noch nicht wirklich besser :-(
Ich habe einen Umlaut in meinem Nachnahmen. Dieser wird dann regelmässig verstümmelt, wenn ich Name und Adresse im Internet angebe und die auch bei grossen europäischen Firmen.
Manchmal erzeugt der Umlaut schon bei der Eingabe lustige Fehlermeldungen. Manchmal funktioniert die Eingabe, aber der Umlaut wird auf der Webseite dann falsch angezeigt.
Manchmal funktioniert alles auf der Webseite, aber die ausgedruckte Adresse für die Post ist verstümmelt ....
Im besten Fall wird das "ö" zu einem "Ä", kann aber auch zu "&ouml;" werden.

MfG Peter(TOO)

HaWe
29.09.2016, 18:28
ich nutze z.Zt. sogar noch eine 1.6.5 Version, die aber perfekt funktioniert -
irgendwann später hat Arduno die komplette Java-VM geändert, und ab da lief bei mir nichts mehr vernünftig wie noch vorher.

Ich bleibe bei meiner 1.6.5, wenn keine dringenden Gründe iwann dagegensprechen. Da ist absolut nichts "hoffnungslos veraltet", allerdings halte ich mich auch an gewisse Regeln, denn Java mit seinem Processing und Wiring ist extrem fehleranfällig, wenn Dateien nicht dort liegen und so heißen, wo und wie Java sie vermutet/erwartet:

Installation nur in die Windows Standard-Ordner,
keine Leerzeichen und keine Umlaute in Dateinamen.

So fahre ich seit 2 1/2 Jahren sehr gut mit den Arduino-Eigenheiten.

Und wenn mal avrdude oder spezielle libs oder boardspecs nicht gefunden wurden, dann half nur eine komplette saubere totale Deinstallation und anschließende Neuinstallation, alles andere war Murks.
Arduino legt nämlich auch viele Hilfsprogramme v.a. unter Benutzer-, Windows- und Programm-Ordnern beliebig quer verteilt über die Festplatte an, und Karteileichen, die die alte Installaiion zum Absturz brachten, machen das dann anschließend auch weiterhin bei jedem Upgrade ohne komplettes vorheriges Löschen, teilw. auch mit manuellen Nacharbeiten...
Wenn du künftig so etwas vermeiden willst, empfehle ich dir sehr, es auch so zu machen.
Andere Ordner || seltsame Namen => multiple Probleme.

fredyxx
29.09.2016, 22:28
ich nutze z.Zt. sogar noch eine 1.6.5 Version, die aber perfekt funktioniert -


Das ist ja sehr interesssant.
Na ja, ich bin schon bei 1.6.7 und werde nach den Erfahrungen von heute auch dabei bleiben, nachdem ich nun wieder alles im Griff zu haben glaube.

vG

fredyxx

Ceos
30.09.2016, 06:49
Die ganz alten Hasen kennen das Problem noch und vermeiden instinktiv Umlaute in Dateinamen

Nein, ein alter Hase wandelt einfach in eine URI um, die verkraftet so ziemlich ALLES und ist OS unabhängig
wenn etwas dabei ist, das nicht konvertiert werden kann man es beim Umwandeln einfach den Fehler abfangen und korrigieren oder man gibt stumpf ne Fehlermeldung aus. Absolut sicher ... wie gesagt, wenn cih Zeit dafür aufbringen könnte würde ich direkt ganze Blöcke von der Software neu schreiben!

Aber wenn man schon den ganzen Tag auf arbeit programmiert hat man nach der Arbeit nur wenig Lust drauf, da nehm ich mir lieber meinen Balkon vor

Peter(TOO)
30.09.2016, 11:00
Hallo,

Nein, ein alter Hase wandelt einfach in eine URI um, die verkraftet so ziemlich ALLES und ist OS unabhängig
Die URI kamen erst später.
Zudem wird das für einen normalen Anwender etwas unhandlich, wenn er das im Kopf machen muss.

Es geht hier nicht um die Programmierung einer IDE, sondern um deren Anwendung!

MfG Peter(TOO)

fredyxx
30.09.2016, 12:31
Was ist die URI??

HaWe
30.09.2016, 13:08
ich glaube, das ist nur was für Spezialisten und alte Hasen, nichts was uns Anfänger wirklich interessieren muss... ;)

Übrigens, da gabs offenbar wirklich einen dicken Bug in der letzten IDE 1.6.12:

https://github.com/arduino/Arduino/issues/5430 8)

ich kann allerdings nicht herauslesen, ob es nur Linux- oder auch Windows-PCs betraf...

Ceos
30.09.2016, 13:10
https://docs.oracle.com/javase/7/docs/api/java/net/URI.html

okay das war ne Faule Antwort :D
ich sprach von dem Source der IDE, vor allem den zum speichern der Dateien... SOrry wenn wir uns da missverstanden haben!

Aber selbst wenn die Funktion erst später kam sollte man doch versuchen in solchen Dingen ein wenig Schritt zu halten und neue MEthoden verwenden! Das Problem wurde erst vor ein paar Monaten behoben und URI ist schon 2Jahre alt.