findfirst Hilfe

Goldroger

Grünschnabel
Folgendes Problem, ich versuche in einem Programm die Funktion FindFirst zu verwenden, Quellcode habe ich im Internet gefunden, weil meiner nicht tat:

C/C++ Code:
#include <stdio.h>
#include <dir.h>

/* File attribute definitions */

#define NORMAL 0x00
#define READONLY 0x01
#define HIDDEN 0x02
#define SYSTEM 0x04
#define VOLLABEL 0x08
#define DIR 0x10
#define ARCHIVE 0x20

int main()
{
struct ffblk fblock; /* Create file info block */

if( findfirst("*.*",&fblock,NORMAL) != 0 )
{
puts("Oops! Some kind of error!");
return 1;
}
printf("I have found the file %s\n",fblock.ff_name);
printf("It is %d bytes in size.\n",fblock.ff_fsize);

return 0;
}

Das Programm müsste meiner Ansicht nach laufen, tut es aber nicht. Folgende Fehler treten dabei auf:

[Linker Fehler] Unresolved external '__InitVCL' referenced from C:\PROGRAMME\BORLAND\CBUILDER6\LIB\CP32MTI.LIB|crtlvcl

[Linker Fehler] Unresolved external '__ExitVCL' referenced from C:\PROGRAMME\BORLAND\CBUILDER6\LIB\CP32MTI.LIB|crtlvcl

Danach hab ich den Quelltext aus der Borlandhilfe genommen und den probiert.

C/C++ Code:
#include <stdio.h>
#include <dir.h>

int main(void)
{
struct ffblk ffblk;
int done;
printf("Directory listing of *.*\n");
done = findfirst("*.*",&ffblk,0);
while (!done)
{
printf(" %s\n", ffblk.ff_name);
done = findnext(&ffblk);
}

return 0;
}


Da kamen allerdings die gleichen Fehler. Was stimmt dabei nicht, bitte helft mir.
 
Kann es sein, daß du keine Konsolenanwendung als Projekt genommen hast ?
VCL brauchst du in deinem Fall nämlich gar nicht zwingend.

Und int main(..) funktioniert auf keinen Fall mit einer Windowsanwendung,
eher int WinMain(..) . Ich meine, falls du eine Windowsanwendung schreiben
wolltest...

BadMourning
 
Zurück