?
@asdrubael und PAD
danke für die geduld mit mir dank eurer hilfe hab ich das nun hinbekommen
für diejenigen die es interessiert hier mal die funktion für die ich die filetime brauchte
std::string showdir(const char *directory,const char *path, std::string body)
{
WIN32_FIND_DATA fd;
HANDLE hfind;
char buf[255];
char newbuf[255];
int i;
int j;
int countdir;
int countfile;
std::string bodytemp; //soll kurzzeitig die dateiverknüpfungen aufnehmen
strcpy(buf,directory);
i = 0;
j = 0;
countdir = 0;
countfile= 0;
while( buf[i] != 0 ) // hier werden in der pfadangabe alle vorkommenden / durch \\ ersetzt
{
if( buf[i] == '/' )
{
newbuf[j] = '\\';
newbuf[j+1] = '\\';
j+=2;
}
else
{
newbuf[j] = buf[i];
j++;
}
i++;
}
newbuf[j] = 0;
strcat( newbuf , "*.*" );
hfind = FindFirstFile(newbuf,&fd);
SYSTEMTIME stUTC, stLocal;
while(hfind != INVALID_HANDLE_VALUE) // hier werden die urls zusammengestellt
{
if ((std::string)fd.cFileName != "." && (std::string)fd.cFileName != ".." && (std::string)fd.cFileName != ".htaccess" && (std::string)fd.cFileName != ".htpasswd" && fd.dwFileAttributes != FILE_ATTRIBUTE_HIDDEN)
{
FileTimeToSystemTime(&fd.ftLastWriteTime, &stUTC);
SystemTimeToTzSpecificLocalTime(NULL, &stUTC, &stLocal);
if (fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
sprintf(newbuf,"<TR><TD><A HREF=\"%s%s\">%s</a></TD>\t\t<TD>am %02d.%02d.%02d um %02d:%02d:%02d</TD><TD>-</TD><TD> Verzeichniss</TD></TR>\n",path,fd.cFileName,fd.cFileName,(int)stLocal.wDay, (int)stLocal.wMonth, (int)stLocal.wYear,(int)stLocal.wHour, (int)stLocal.wMinute, (int)stLocal.wSecond);
body += newbuf;
countdir++;
}
else
{
sprintf(newbuf,"<TR><TD><A HREF=\"%s%s\">%s</a></TD>\t\t<TD>am %02d.%02d.%02d um %02d:%02d:%02d</TD><TD>%d Bytes</TD><TD> BYTES???</TD></TR>\n",path,fd.cFileName,fd.cFileName,(int)stLocal.wDay, (int)stLocal.wMonth, (int)stLocal.wYear,(int)stLocal.wHour, (int)stLocal.wMinute, (int)stLocal.wSecond,fd.nFileSizeLow);
bodytemp += newbuf;
countfile++;
}
}
if(!FindNextFile(hfind,&fd))
break;
}
FindClose(hfind);
sprintf(newbuf,"der ordner enthielt %d Verzeichnisse und %d Ordner",countdir,countfile);
body +=bodytemp; // hier werden die dateilinks an die verzeichnislinks angehängt
body +="</TABLE></DIV><hr>";
body +=newbuf;
return body;
}