Autor Beitrag
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 09.03.04 05:11 
So, der BookmarkChecker ist fertig und liegt mit Source vor.

Man kann mit ihm die Bookmarks / Favoriten des IE überprüfen oder die Bookmarkdatei eines anderen Browsers. Er stellt dann eine Liste zusammen mit den nicht zu erreichenden Links, welche man dann auswählen und dann löschen lassen kann .

Download: BookmarkChecker [330 KB]

An einen Moderator: Das entsprechende Topic in der Freeware-Sparte kann dann geschlossen werden.
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Di 09.03.04 10:03 
Hallo Luckie,

ich habe Dein Programm gerade mit meiner exportierten Lesezeichendatei von Opera getestet. Gefunden hat dein Programm allerdings keinen einizigen Link in der Datei. Der Grund ist wohl der das du beim Auswerten der Datei (in der Procedure ExtractBookmarksFromFile) als Endmarkierung das doppelte Anführungszeichen plus ein Leerzeichnen verwendest:
ausblenden Delphi-Quelltext
1:
2:
3:
const
  BEGINLINK = 'HREF="';
  ENDLINK = '" ';

In meiner Datei sind aber die Links wie folgt definiert:
ausblenden Quelltext
1:
<a href="http://www.delphi-forum.de">Index</a></dd>					

Ist das jetzt absichtlich das du nach einem Leerzeichen suchst?

Gruß
Tino
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 09.03.04 14:03 
Wie kommt denn das Leerzeichen dahin? :shock:

Hehe, es hat mit Mozilla und IE geklappt, weil die eins an der Stelle haben. Werde es korrigieren.

Bitte noch mal testen. ;)
Tino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Veteran
Beiträge: 9839
Erhaltene Danke: 45

Windows 8.1
Delphi XE4
BeitragVerfasst: Di 09.03.04 14:38 
Zustätzlich würde ich beim suchen des Beginlink nicht auf Groß- / Kleinschreibung achten. Beim der Exportdatei von Opera ist die href Angabe in Kleinbuchtaben.

Hab die Funktion wie folgt geändert... dann klappt es auch mit der Opera-Export-Datei :-)

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
procedure ExtractBookmarksFromFile(BookmarkFile: string; Bookmarks: TStrings);
const
  BEGINLINK = 'HREF="';
  ENDLINK = '"';
var
  F: TextFile;
  s: string;
  StartPos, EndPos: Integer;
begin
  AssignFile(F, BookmarkFile);
{$I-}
  Reset(F);
{$I+}
  if IOResult = 0 then
  begin
    while not EOF(F) do
    begin
      readln(F, s);
      StartPos := AnsiPos(BEGINLINK, Uppercase (s));
      if StartPos > 0 then
      begin
        Delete (s, 1, StartPos + Length (BEGINLINK) -1);
        EndPos := AnsiPos(ENDLINK, s);
        if EndPos > 0 then
        begin
          Delete (S, EndPos, Length (S));
          If length(s) > 0 then
            Bookmarks.Add(s);
        end;
      end;
    end;
    CloseFile(F);
  end;
end;
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 09.03.04 14:56 
Oh, danke. :thumb:
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 12.03.04 03:00 
OK. So ist es jetzt eingebaut:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
{------------------------------------------------------------------------------}
{  Extracts the links from the bookmarkfile                                    }
{                                                                              }
{  Modified by Tino Teuber                                                    }
{------------------------------------------------------------------------------}

procedure ExtractBookmarksFromFile(BookmarkFile: string; Bookmarks: TStrings);
const
  BEGINLINK = 'HREF="';
  ENDLINK = '"';
var
  F: TextFile;
  s: string;
  StartPos, EndPos: Integer;
begin
  AssignFile(F, BookmarkFile);
{$I-}
  Reset(F);
{$I+}
  if IOResult = 0 then
  begin
    while not EOF(F) do
    begin
      readln(F, s);
      StartPos := AnsiPos(BEGINLINK, Uppercase (s));
      if StartPos > 0 then
      begin
        Delete (s, 1, StartPos + Length (BEGINLINK) -1);
        EndPos := AnsiPos(ENDLINK, s);
        if EndPos > 0 then
        begin
          Delete (S, EndPos, Length (S));
          If length(s) > 0 then
            Bookmarks.Add(s);
        end;
      end;
    end;
    CloseFile(F);
  end;
end;