AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi DFCRC32 --> problem bei der procedur ansprechung
Thema durchsuchen
Ansicht
Themen-Optionen

DFCRC32 --> problem bei der procedur ansprechung

Ein Thema von sharkx · begonnen am 26. Apr 2003 · letzter Beitrag vom 26. Apr 2003
Antwort Antwort
sharkx

Registriert seit: 24. Feb 2003
Ort: St. Ingbert
211 Beiträge
 
Delphi 7 Enterprise
 
#1

DFCRC32 --> problem bei der procedur ansprechung

  Alt 26. Apr 2003, 15:20
Hallo :>

Ich benutze folgende Procedur um dateien zu vergleichen (CRC32 -> Sfv file)

Delphi-Quellcode:
function DFCheckSFV(Directory, SFVFileName: string; CallBackPerFile: DFCheckSFVFile): boolean;
var
  vSL: TStringList;
  Cnt: integer;
  FileName: string;
begin
  Result := false;
  if Directory[Length(Directory)] <> '\then
    Directory := Directory + '\';

  vSL := TStringList.Create;
  try
    vSL.LoadFromFile(SFVFileName);
    for Cnt := 0 to vSL.Count - 1 do
      vSL[Cnt] := Trim(vSL[Cnt]);
    for Cnt := 0 to vSL.Count - 1 do
    begin
      if vSL[Cnt][1] <> ';then
      begin
        FileName := Trim(Copy(vSL[Cnt], 1, Length(vSL[Cnt]) - 8));
        if Copy(vSL[Cnt], Length(vSL[Cnt]) - 7, 8) <> DFCalcCRC32(Directory + FileName) then
        begin
          if assigned(CallBackPerFile) then
            CallBackPerFile(Directory + FileName, false)
          else
            exit;
        end
        else
          if assigned(CallBackPerFile) then
            CallBackPerFile(Directory + FileName, true);
      end;
    end;
  finally
    vSL.Free;
  end;
  Result := true;
end;

Leider kapiere ich nicht wie ich diese procedur aufrufe?!

Aus der Dazugehörigen hilfe:

Zitat:
{
Vergleicht die in einer SFV-Datei befindlichen Prüfsummen von Dateien mit den Dateien in einem bestimmten
Verzeichnis.
Parameter:
Directory: Pfad zum Verzeichnis der zu prüfenden Dateien (es können nur Dateien in einem Verzeichnis
geprüft werden, da in der SFV-Datei die Dateinamen ohne Pfad stehen)
SFVFileName: Name der SFV-Datei
CallBackPerFile: nil oder eine Callback-Funktion mit der folgenden Signatur:
DFCheckSFVFile = procedure(FileName: string; OK: boolean);
Für jede Datei wird der Dateiname und das Ergebnis der Prüfung übergeben
Rückgabe: Ergebnis des gesamten Checks der SFV-Datei
}
function DFCheckSFV(Directory, SFVFileName: string; CallBackPerFile: DFCheckSFVFile): boolean;
so müsste doch das Aufrufen der Procedur wie folgt aussehen?!:

Delphi-Quellcode:
procedure TForm1.Start1Click(Sender: TObject);
begin
  DFCheckSFVFile(OpenDialog1.File: string; OK: boolean);

Da ich auch noch sehr sehr wenig mit Treads und der gleichem gemacht habe, wäre es sehr nett wenn einer mir die genaue Funktion von denen Variablen, Functionen und ähnlichem was in dieser DFCheckSFVFile(...) steht, erklärt.

Nach etlichen google versuchen, sowie das recherchieren in verschienden Foren hat mir leider nicht das Ergebniss gegeben was ich mir erhofft hatte.


Vielen dank im vorraus :>

[edit=Daniel B]Delphi-Tags ergänzt. MfG Daniel B.[/edit]
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#2
  Alt 26. Apr 2003, 17:59
Hallo,

Irgendwie blicke ich nicht ganz durch, da ich nicht weiss was 'Sfv' Files sind,
aber ohne alles zu verstehen und auf die Schnelle würde ich sagen, der Aufruf kann sein:

Delphi-Quellcode:
  IF DFCheckSFV('c:\', 'MyFile.sfv'; NIL) THEN
      BEGIN
// mach was (wenn Datei = DFCalcCRC32)
      END
   ELSE
      BEGIN
// mach was (wenn Datei <> DFCalcCRC32)
      END;
oder

Delphi-Quellcode:
  IF DFCheckSFV('c:\', 'MyFile.sfv', 'Ein Text',TRUE) THEN
// wie oben
wobei DFCheckSFVFile eine Prozedur mit folgenden Parameter ist

Delphi-Quellcode:
DFCheckSFVFile(FileName: string; OK: boolean);
begin
// Callback >>Prozedur<< ???
// Was Du da machst weiss ich nicht
end;
Wobei ich mich etwas wundere, da ich der Meinung bin, Callbacks sollten immer Funktionen sein...

[EDIT] Darf auch eine Prozedur sein, wie ich nun festgestellt habe![/EDIT]
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#3
  Alt 26. Apr 2003, 18:13
Hallo

Sag mal, warum stellst Du den halben Source einer Demo-Datei in das Forum ohne das Du den Link dazu angibst?

Zuerst nuckle ich mir eine Lösung für Dich aus den Fingern, dann merke ich erst, dass Zu Deiner Komponente ein Demoprojekt mitgeliefert wird!

Auf www.del-net.com: http://www.del-net.com/frmDownload.html]CRC32 - Code-Berechnung und SFV-Datei erzeugen/prüfen (mit Source)[/URL]

Das war unnötig!
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
sharkx

Registriert seit: 24. Feb 2003
Ort: St. Ingbert
211 Beiträge
 
Delphi 7 Enterprise
 
#4
  Alt 26. Apr 2003, 19:35
1. Es war absolut net unnötig
2. Wenn ich nicht mehr dazu habe, kann ich auch nicht mehr dazu Posten
3. Habe ich auch keine Demo Datei
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz