Win32 API Include in C für directory listing gesucht ...

Gast #515043
Lesenswert?

Ist ja alles ganz nett und schön mit der MFC und Objektorientierung usw.
Doch ich brauche nur die Headerdatei und die Funktionen für's 
FileHandling in C unter Windows32 !
Das Programm soll ganz einfach auf der Kommandozeile laufen, innerhalb 
des aktuellen Verzeichnisses alle Dateien durchgehen, davon ein MD5 
nehmen und wenn zwei Dateien im MD5 identisch sind eine davon löschen.
Ich suche jetzt über eine Stunde und finde ausschließlich MFC, C#, JAVA 
und sonstige Infos :-(
Bin ja kurz davor 'nen Installer für cygwin mit'm shellscript zu bauen 
...
Muß denn heutzutage jedes mini Tool 'nen Overhead von zwanzig MBs haben, 
nur weil's gerade in ist ?
Sorry Offtopic ...
Also nochmal, wer kann mir sagen welche Includes ich in den OpenWatcom 
Compiler für den Zugriff auf Verzeichnisse und Dateien darin in reinem C 
brauche (windows.h ja schonmal, oder) ?
Danke,
C-Progger
Gast #515072
Lesenswert?

> Also nochmal, wer kann mir sagen welche Includes ich in den OpenWatcom
> Compiler für den Zugriff auf Verzeichnisse und Dateien darin in reinem
> C brauche (windows.h ja schonmal, oder) ?

Ja, genau. Mehr solltest du nicht brauchen.
Gast #516084
Lesenswert?

Das mit dem FindFirst und FindNext war schon klar ;-)
Nur alle Infos im Web bezogen sich auf C#, JAVA und C++ mit MFC ;-)
Der Zugriff auf die Dateien funzt jetzt, nur stehe ich gerade ziemlich 
auf dem Schlauch :-(
Ich nehme folgenden MD5 Sourcecode:
http://xyssl.org/code/source/md5/
Da mache ich dann logischerweise sowas:
1
...
2
unsigned char cmd5_1[16];
3
unsigned char cmd5_2[16];
4

5
if(md5_file(FindFileData.cFileName,cmd5_1)||md5_file(FindFileData1.cFileName,cmd5_2))
6
{
7
  printf("\n Error md5 fileopening ! \n");
8
  return -1;
9
}
Jetzt sollten eigentlich in den beiden Variablen die MD5 Werte der Datei 
stehen.
Nur mit
1
if(cmd5_1==cmd5_2)
2
{
3
  printf("\n Deleting now %s \n",FindFileData1.cFileName);
4
  if(remove(FindFileData1.cFileName))
5
  {
6
    printf("\n Error in file deletion ! \n");
7
    return -1;
8
  }
9
}
werden identische Dateien nicht erkannt :-(
Kann mir mal bitte jemand meinen Denkfehler aufzeigen ?
Danke,
C-Progger
Gast #516160
Lesenswert?

Ok,
nun mal NEU nach Absturz, Neustart und restlichem Scheiß :?
Also wenn jemand mal einen Blick auf die MD5 Routine geworfen hätte, 
wüßte er sie es das in das char Array Zahlen hineinkommen und KEINE 
Buchstaben !
Auf den Trichter mit strcmp bis hin zu mcmp usw. war ich auch schon 
gekommen ...
Nützt nur nix :-(
Ich peile einfach nicht das Format was die MD5 Routine in das char array 
packt !
Ist jetzt sowieso zu spät um klare Gedanken zu fassen ...
Trotzdem Danke,
C-Progger

GÄÄÄÄHHHHNNNNN
Gast #516267
Lesenswert?

Danke für die Blumen, aber es ist völlig wurscht ob in einem Array 
Zahlen, Buchstaben oder Hirnwindungen stecken. Es bringt nur einfach 
nichts, die Adresse von MD5-Summen zu vergleichen an Stelle der Summen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren