Autor Beitrag
Amiga-Fan
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Di 26.10.04 21:02 
ich weiß nicht, wie ich Mozilla-Favoriten importieren soll. Die Datei heißt ja bookmarks.html. Die wichtigste Frage für mich: wie finde ich über Delphi das Verzeichnis heraus, wo diese Datei liegt? Je nach Windows-Benutzer liegt die ja woanders...

Suchmaschine hier habe ich schon bemüht und nur das hier gefunden: www.swissdelphicente.../showcode.php?id=743

Aber da steht nicht, wie ich das Verzeichnis herausfinde. Mal abgesehen davon, das da beim auslesen nicht die Hierarchien berücksichtigt werden (schreibt ja alle urls untereinander), aber das kriege ich schon hin....
raziel
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2453

Arch Linux
JS (WebStorm), C#, C++/CLI, C++ (VS2013)
BeitragVerfasst: Di 26.10.04 21:13 
In das Anwendungsdaten-Verzeichnis kommst Du durch diesen FAQ-Beitrag von MathiasSimmack.
Von da aus gehst Du ins Unterverzeichnis Mozilla/Firefox.
In diesem Ordner findest Du die Datei profiles.ini, in der die Profile stehen. Hier noch das richtige auswählen und im ausgelesenen Verzeichnis die Datei bookmarks.html parsen/auslesen-wie auch immer.

_________________
JSXGraph
Amiga-Fan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Di 26.10.04 21:37 
Danke schonmal.

Du meinst dieses Verzeichnis? D:\Dokumente und Einstellungen\Benutzer1\Anwendungsdaten\Mozilla\Profiles\default\rw41z34y.slt

Da sind bei mir die Favoriten gespeichert. Eine profiles.ini habe ich aber nicht gefunden. Wie kommt er nur auf diesen Orndernamen?! rw41z34y.slt
raziel
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2453

Arch Linux
JS (WebStorm), C#, C++/CLI, C++ (VS2013)
BeitragVerfasst: Di 26.10.04 23:08 
Amiga-Fan hat folgendes geschrieben:
Wie kommt er nur auf diesen Orndernamen?! rw41z34y.slt

:nixweiss:

Die Profiles.ini müsste bei Dir im Ordner D:\Dokumente und Einstellungen\Benutzer1\Anwendungsdaten\Mozilla\ zu finden sein.

raziel

_________________
JSXGraph
Amiga-Fan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Mi 27.10.04 20:32 
in dem Verzeichnis existiert aber keine profiles.ini, aber dafür eine registry.dat, und da steht der ordnername drin. Nagut ich versuche das dann mal.
Amiga-Fan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Mo 01.11.04 18:30 
ich habe es jetzt hingekriegt. Aber: Im Favoritenmenü meines Programms werden Einträge mit Umlauten falsch angezeigt, statt Rückmeldung bspw. RÂ1/4ckmeldung (1/4 als ein Zeichen). Was habe ich denn da falsch gemacht?
Amiga-Fan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Mo 01.11.04 20:19 
Also vorhin hatte ich etwas komisches bemerkt: zuerst wollte ich die Datei bookmarks.html zeilenweise mit readln einlesen. Dabei hatte ich gemerkt, das er mit einer Ausführung von readln den gesamten Inhalt der Datei zurücklieferte, reproduzierbar. Also hatte ich alles auf einmal ausgelesen und mich immer bis zum nächsten #10 vorgearbeitet. Funktionierte auch einwandfrei. Gerade eben gings nicht mehr, nachgesehen und siehe da: plötzlich arbeitete das einlesen mit readln korrekt, schön zeile für zeile :shock: :?: hä?

Kann mir das jemand erklären? Das Problem mit den Umlauten besteht aber immer noch.
Amiga-Fan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Di 16.11.04 16:13 
das mit den Umlauten habe ich jetzt hingekriegt, durch das hier:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
              strtemp:=stringreplace(strtemp,'Ü','Ü',[rfReplaceAll]);
              strtemp:=stringreplace(strtemp,'ü','ü',[rfReplaceAll]);
              strtemp:=stringreplace(strtemp,'Ö','Ö',[rfReplaceAll]);
              strtemp:=stringreplace(strtemp,'ö','ö',[rfReplaceAll]);
              strtemp:=stringreplace(strtemp,'Ä','Ä',[rfReplaceAll]);
              strtemp:=stringreplace(strtemp,'ä','ä',[rfReplaceAll]);
              strtemp:=stringreplace(strtemp,'ß','ß',[rfReplaceAll]);
              strtemp:=stringreplace(strtemp,'–','-',[rfReplaceAll]);
              strtemp:=stringreplace(strtemp,'°','°',[rfReplaceAll]);


Allerdings nehme ich an, das so nicht alle Zeichen berücksichtigt werden, weil auch - dabei ist. Ist das Unicode oder so, wie Mozilla die Lesezeichen abspeichert? Wenn ich die Datei in Notepad öffne, sieht es ganz normal aus...

Moderiert von user profile iconraziel: Code- durch Delphi-Tags ersetzt.
Amiga-Fan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Di 16.11.04 16:15 
was das Hauptproblem dieses Threads angeht, das habe ich folgendermaßen gelöst:

ich lese das Verzeichnis nicht aus dieser Datei aus, sondern ich suche das erste Verzeichnis, was mit .slt endet.
Amiga-Fan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: So 26.12.04 22:36 
Hab mich geirrt. Firefox benutzt die profiles.ini, Mozilla aber die registry.dat um die Profile abzuspeichern (vor allem der standort, wo die verzeichnisse sind). Hab ne Aussage dazu hier gefunden -> www.holgermetzger.de/faqprofile.html

Wenn ich das so wie bisher mache, berücksichtigt er nicht, das 1. es unter Mozilla (Firefox natürlich auch) möglich ist, mehr als ein Profil pro Windows-Profil anzulegen und 2. das das Verzeichnis noch nicht mal relativ sein muß, sondern ganz woanders liegen kann.

Bei Firefox habe ich es hingekriegt, ini-dateien auszulesen ist ja nicht schwer. Aber wie komme ich an diese registry.dat heran, das ist ja eine Binärdatei. Ich habe schon hier im Forum gesucht, aber noch nichts dazu gefunden.

Wäre schade, wenn ich nur Firefox-Favoriten richtig einbinden könnte, denn das unterscheidet sich nur an der Stelle...

Edit: alternativ die Frage, ob Mozilla vielleicht auch irgendwann auf die profiles.ini (Firefox benutzt sie erst seit 0.9, also ist das neu) umsteigt. Aber ich habe 1.7.5 drauf und da ist es noch nicht der Fall...