Recorrer un directorio en windows

[-H-]
11 de Junio del 2004
Mi problema es que quiero realizar un programa al que se le pase como parametro un directorio, y luego, manipular todos los *.sql que haya dentro.
En unix, es´to lo hago muuy fácil, con ayuda de las funciones opendir y readdir, pero en windows no se como hacerlo.
¿SetCurrentDirectory y FindNextFile?
El problema es que si incluyo el afx.h, el linker me da los siguientes errores:
conversor error LNK2005: ya se definió "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) en LIBCMTD.lib(new.obj)
conversor error LNK2005: ya se definió "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) en LIBCMTD.lib(dbgdel.obj)
conversor fatal error LNK1169: se encontraron uno o más símbolos definidos simultáneamente

¿Alguien sabe pq es?¿incompatibilidad entre includes?
tengo los siguientes:
#include "stdafx.h"
#using <mscorlib.dll>
#include <tchar.h>
#include <stdio.h>
#include <direct.h>

(uso fopen, etc para manipular los fichero, puede ser por eso?)

Si no, alguna otra forma de recorrer el directorio?
muchas gracias.

barboles
11 de Junio del 2004
Hola, para realizar este proceso yo siempre utilizo las finciones findfirst y findnext de la libreia <dir.h>

[-H-]
11 de Junio del 2004
Gracias x contestar barboles.
Estoy desarrollando en visual studio.net y no contiene la librería dir.h (supongo que por obsoleta...)
¿Alguien sugiere otra manera?