Automatik-OSM-Downloader

  • Hallo,


    da ja relativ oft neue, aktuellere Karten(Maps) für NaviPOWM zum Download zur Verfügung stehen und man recht schnell "seine" Daten aktualisieren möchte, habe ich einen Downlader mit Entpackfunktion gebastelt.


    Man entpackt das im Dateianhang enthaltene Archiv an einen beliebigen Platz auf seinem PC, liest die "Automatik-OSM-Downloader_liesmich.txt" und startet dann die "Automatik-OSM-Downloader.exe".


    Anschließend kann man seine Profile editieren, also gewünschte Map-Kacheln vordefinieren oder gleich ein Preset bzw. Profil starten.


    Je nach Voreinstellung landen die Maps
    - in dem richtigen Ordner auf dem Navi (wenn als Massenspeicher angeschlossen)
    - in dem richtigen Ordner auf der SD-Karte im Kartenleser
    - in ..\cardaddons\Programme\NaviPOWM\Maps (default) des Tools


    Ich hoffe, daß das Tool nicht nur mir nützt ;)


    Neu in v1.2.0.1:
    - Serverpfad für jedes Profil einzeln einstellbar ( url = ... )

  • Hallo Panik,


    ich hab nun die neue Version getestet und sie funktioniert wunderbar!


    Ein Feature hätte ich noch für die nächste Version:
    Der Zielpfad (für die entpackten MAP-Files) sollte in der INI einstellbar sein bzw. sollte man einen alternatives Ziel angeben können.
    Hintergrund: Ich kopiere die MAP-Files per Kartenleser direkt auf die SD-Karte (geht schneller als mit AS). So könnte ich mir das manuelle Kopieren ersparen.
    Es könnte z.B. so aussehen: Programm prüft, ob der alternative Pfad existiert (z.B. H:\Programme\NaviPOWM\Maps), d.h. ob die SD-Karte (hier Laufwerk H:) auch eingelegt ist. Wenn ja, dann wird direkt dorthin entpackt ansonsten auf den bisherigen Defaultpfad.


    Und noch etwas: Du kannst beim Entpacken auch direkt *.7z angeben, dann werden alle Dateien auf einmal entpackt.


    Gruß,
    Stefan

  • Stefan


    Alle Wünsche erledigt ! ;)


    Je nach Voreinstellung landen die Maps entweder
    - in dem richtigen Ordner auf dem Navi (Massenspeichermodus)
    - in dem richtigen Ordner auf der SD-Karte im Kartenleser
    - in ..\cardaddons\Programme\NaviPOWM\Maps (default) des Tools


    Neuerungen:
    - Ausgabepfad, URL, Vorschaubildanzeige konfigurierbar
    - Datum des letzten Downloads in Auflistung der Profile
    - kleine Optimierungen

  • Hallo Panik,

    Ist das rekunstruierbar, wiederholbar ?
    Haben das andere Nutzer auch ?

    Ja, wenn keine SD-Karte im Kartenleser ist, dann kommt die Meldung! Man kann zwar mit "Weiter" weitermachen, aber das ist nicht so toll.
    Ich weiß nicht, ob Du die Fehlermeldung, dass das Laufwerk gar nicht bereit ist, vorher abfangen kannst?!?


    Und noch etwas: Wenn man direkt auf die Karte entpackt, dann sollten die vorhandenen Maps nicht gelöscht werden! Sonst kann ich nicht mehrere getrennte Bereiche (z.B. zu Hause und Urlaub) nacheinander auf die Karte kopieren.


    Ansonsten Respekt für die schnelle Umsetzung!


    Gruß,
    Stefan

  • Hallo Panik,


    Nachtrag zur obigen Ursache der Fehlermeldung. In der Default INI Datei ist der Ausgabepfad auf Laufwerk L: was ich nicht habe. Setzte ich da ein gültiges Laufwerk ein ist alle ok.
    Sorry für die "schnelle" Fehlermeldung.


    MfG
    Achim



    Ps: Mal ne blöde Frage: Wenn ich


    [Ausgabepfad]
    pfad = "e:\xxx\NaviPOWM\Maps"


    setze und e: eine Platte ist, wird dort nichts angelegt. Warum? Wo wird die Ausgabe umgeschaltet (bestimmt) ? Die Fehlermeldung ist weg, aber die Ausgabe ist wie gewohnt.

  • Hallo,

    und e: eine Platte ist, wird dort nichts angelegt. Warum?

    es wird getestet, ob e:\xxx\NaviPOWM\Maps existiert und wenn nicht, dann die Defaulteinstellung ..\cardaddons\Programme\NaviPOWM\Maps benutzt. Verzeichnisse werden nicht angelegt!


    Die Fehlermeldung kommt, wenn e: gar nicht existiert, da die MS-Funktion DirExists diese produziert!


    Gruß,
    Stefan

  • Hallo,


    ich konnte den Fehler trotz verschiedener Nachbildungen bei mir nicht verzeichnen.
    Dennoch habe ich nochmal eine Erweiterung diesbezüglich eingebaut, die das verhindern soll/könnte ;)


    Auch die Maps im Ausgabeordner werden nur gelöscht, wenn man das wirklich will.


    womisa
    Danke fürs Testen!
    Der Ordner(Pfad) , den du in der Ini einträgst, den muss es wirklich geben.
    Du musst also die Ordner selbst erstellen.
    Nur wenn da nichts schlüssiges steht, werden die Maps im Toolordner ..\cardaddons\Programme\NaviPOWM\Maps
    abgelegt.
    Ich wollte bewusst auf einen Ordnerauswahldialog verzichten - nicht gut ?

  • Hallo Panik,



    Zitat

    Der Ordner(Pfad) , den du in der Ini einträgst, den muss es wirklich geben.


    ..ok. So funzt das GANZE. Die obige Fehlermeldung ist bei mir reproduzierbar, wenn da ein ungültiger Laufwerksbuchstabe steht.


    Vielen Dank
    Achim



    Noch ne Frage:


    Zitat

    Vorschaubildanzeige konfigurierbar



    Bei mir geht nach dem Start der "Paint" editor auf. Sollte da nicht ein Bild(?) des ausgewählten Bereichs erscheinen?



    Zitat

    Ich hab Win XP


    ..ich auch.

  • Hallo Panic,


    ich fürchte, Du wirst das "Problem" nicht mit Mort lösen können, da die Meldung von Windows (WinXP) kommt, sobald man auf das Laufwerk zugreift, bzw. genauer gesagt auf das Laufwerk wechseln will.


    Das Problem tritt nur bei einem "Wechseldatenträger" auf!


    Man kann die Fehlermeldung auch in der Eingabeaufforderung reproduzieren:
    Wechsel nach H: (keine SD eingelegt) -> Meldungsfenster. Windows meldet danach "Das Gerät ist nicht bereit."
    Bei einem "dir H:" kommt kein Meldungsfenster und der selbe Hinweis.


    Bei einem nicht vorhandenen Laufwerksbuchstaben bzw. bei einem nicht erreichbaren Netzwerklaufwerk kommt auch kein Meldungsfenster, aber die Windows-Meldung "Das System kann das angegebene Laufwerk nicht finden."


    Man müsste also den Error-Code von "Das Gerät ist nicht bereit." abfragen, aber ob sich der Aufwand lohnt?


    Gruß,
    Stefan


    Edit:
    Du müsstest noch den Parameter "-y" beim Entpacken mit angeben, damit die vorhandenen Dateien ohne Rückfrage überschrieben werden!

  • Hallo Stefan,


    danke fürs Testen und den Entpackhinweis - hab es eingebaut!


    Also ich habe mir Mühe gegeben - ich kann den Fehler wie er bei euch auftauch nicht reproduzieren.
    Ich habe Laufwerksbuchstaben eingesetzt, die es geben könnte, es aber nicht gibt, dann habe ich Laufwerke am SD-Kartenleser benutzt, die nicht besetzt bzw wo die Karte rausgewurfen wurde, habe unsinnige Buchstaben benutzt.
    Keine Ahnung was da los ist. Da es aber eher selten vorkommt, lassen wir es mal so wie es jetzt ist - oder? ;)


    Dieses Script läuft jedenfalls durch bei mir:


    mapordner = "L:\Programme\NaviPOWM\Maps"


    #ErrorLevel ("off")


    wahr = "0 "


    # Abfrage falls pfad nicht in Ini stand
    if (mapordner eq "")
    mapordner = SystemPath("ScriptPath")
    wahr = wahr & "1 "
    endif


    # falls pfad in Ini stand, Abfrage, ob er aktuell existiert
    If (DirExists(mapordner) = 0)
    mapordner = SystemPath("ScriptPath")
    wahr = wahr & "2 "
    endif


    # falls pfad existiert, Abfrage, ob er "NaviPOWM\Maps" beinhaltet
    check = Find( mapordner, "NaviPOWM\Maps" , 1 )
    If (check = 0)
    mapordner = SystemPath("ScriptPath")
    wahr = wahr & "3 "
    endif


    message(mapordner & " " & wahr)


    #ErrorLevel ("error")


    exit