Делаю прогу чисто на АПИ, но вот проблема, немогу сделать поиск по всему диску, определенного файла.
Никто случайно не поделится опытом?
Мнебы примерчик такого поиска.
Заранее балодарен.
Здравствуйте TankMan, Вы писали:
TM>Делаю прогу чисто на АПИ, но вот проблема, немогу сделать поиск по всему диску, определенного файла. TM>Никто случайно не поделится опытом? TM>Мнебы примерчик такого поиска. TM>Заранее балодарен.
Воспоьзуйся функциями _findfirst, _findnext, _findclose.
Описание смотри в MSDN.
Здравствуйте Курочкин Павел, Вы писали: TM>>Делаю прогу чисто на АПИ, но вот проблема, немогу сделать поиск по всему диску, определенного файла. КП>Воспоьзуйся функциями _findfirst, _findnext, _findclose. КП>Описание смотри в MSDN. КП>
Что вы думаете я такой тупой что названий этих функций не знаю?
Я не знаю как ими пользоваться, и если бы у меня был MSDN я бы уж давно посмотрел.
и еще насколько я помню в findfirst в качестве параметра нужно указывать директорию, в которой будет проходить поиск, а как узнать, какие именно директории будут находится на винте, вот этого я не знаю, поэтому прошу пример.
Здравствуйте TankMan, Вы писали:
TM>Здравствуйте Курочкин Павел, Вы писали: TM>>>Делаю прогу чисто на АПИ, но вот проблема, немогу сделать поиск по всему диску, определенного файла. КП>>Воспоьзуйся функциями _findfirst, _findnext, _findclose. КП>>Описание смотри в MSDN. КП>> TM>Что вы думаете я такой тупой что названий этих функций не знаю? TM>Я не знаю как ими пользоваться, и если бы у меня был MSDN я бы уж давно посмотрел. TM>и еще насколько я помню в findfirst в качестве параметра нужно указывать директорию, в которой будет проходить поиск, а как узнать, какие именно директории будут находится на винте, вот этого я не знаю, поэтому прошу пример.
Здравствуйте TankMan, Вы писали:
TM>Здравствуйте Курочкин Павел, Вы писали: TM>>>Делаю прогу чисто на АПИ, но вот проблема, немогу сделать поиск по всему диску, определенного файла. КП>>Воспоьзуйся функциями _findfirst, _findnext, _findclose. КП>>Описание смотри в MSDN. КП>> TM>Что вы думаете я такой тупой что названий этих функций не знаю? TM>Я не знаю как ими пользоваться, и если бы у меня был MSDN я бы уж давно посмотрел. TM>и еще насколько я помню в findfirst в качестве параметра нужно указывать директорию, в которой будет проходить поиск, а как узнать, какие именно директории будут находится на винте, вот этого я не знаю, поэтому прошу пример.
Вот выкусил из msdn.
#include <stdio.h>
#include <io.h>
#include <time.h>
void main( void )
{
struct _finddata_t c_file;
long hFile;
/* Find first .c file in current directory */if( (hFile = _findfirst( "*.c", &c_file )) == -1L )
printf( "No *.c files in current directory!\n" );
else
{
printf( "Listing of .c files\n\n" );
printf( "\nRDO HID SYS ARC FILE DATE %25c SIZE\n", ' ' );
printf( "--- --- --- --- ---- ---- %25c ----\n", ' ' );
printf( ( c_file.attrib & _A_RDONLY ) ? " Y " : " N " );
printf( ( c_file.attrib & _A_SYSTEM ) ? " Y " : " N " );
printf( ( c_file.attrib & _A_HIDDEN ) ? " Y " : " N " );
printf( ( c_file.attrib & _A_ARCH ) ? " Y " : " N " );
printf( " %-12s %.24s %9ld\n",
c_file.name, ctime( &( c_file.time_write ) ), c_file.size );
/* Find the rest of the .c files */while( _findnext( hFile, &c_file ) == 0 )
{
printf( ( c_file.attrib & _A_RDONLY ) ? " Y " : " N " );
printf( ( c_file.attrib & _A_SYSTEM ) ? " Y " : " N " );
printf( ( c_file.attrib & _A_HIDDEN ) ? " Y " : " N " );
printf( ( c_file.attrib & _A_ARCH ) ? " Y " : " N " );
printf( " %-12s %.24s %9ld\n",
c_file.name, ctime( &( c_file.time_write ) ), c_file.size );
}
_findclose( hFile );
}
}
ещё тебе будет нужен аттрибут _A_SUBDIR — Subdirectory. Value: 0x10
Это чтобы залезать в поддиректории.