Advertisement
filip710

drugi

Apr 11th, 2019
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.63 KB | None | 0 0
  1. #include"stdafx.h"
  2. #include <windows.h>
  3. #include <stdio.h>
  4. #include <time.h>
  5.  
  6. #define VEL 2*1024*1024*1024-1
  7. long bv = 0;
  8.  
  9. FILETIME ft;
  10.  
  11. void obilazak(char *d)
  12. {
  13.     HANDLE h;
  14.     WIN32_FIND_DATA fd;
  15.  
  16.     if (!SetCurrentDirectory(d))
  17.     {
  18.         printf("Greska\n");
  19.         return;
  20.     }
  21.     h = FindFirstFile("*", &fd);
  22.     if (h == INVALID_HANDLE_VALUE)
  23.     {
  24.         printf("Greska\n");
  25.         return;
  26.     }
  27.     char trenutni[2048];
  28.     GetCurrentDirectory(2048, trenutni);
  29.  
  30.     for (;;)
  31.     {
  32.         if (fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
  33.         {
  34.             char novid[2048];
  35.  
  36.  
  37.             strcpy(novid, trenutni);
  38.             strcat(novid, "\\");
  39.             strcat(novid, fd.cFileName);
  40.  
  41.             if (strcmp(fd.cFileName, ".") != 0 && strcmp(fd.cFileName, "..") != 0)
  42.                 obilazak(novid);
  43.         }
  44.         else
  45.         {
  46.             if (fd.nFileSizeHigh != 0 || fd.nFileSizeLow>VEL)
  47.             {
  48.                 bv++;
  49.  
  50.             }
  51.  
  52.             if (ft.dwHighDateTime == 0 && ft.dwLowDateTime == 0)
  53.             {
  54.                 ft = fd.ftCreationTime;
  55.             }
  56.             else if (fd.ftCreationTime.dwHighDateTime < ft.dwHighDateTime || (fd.ftCreationTime.dwHighDateTime == ft.dwHighDateTime && fd.ftCreationTime.dwLowDateTime < ft.dwLowDateTime))
  57.                 ft = fd.ftCreationTime;
  58.         }
  59.  
  60.         if (!FindNextFile(h, &fd))
  61.             break;
  62.     }
  63.     FindClose(h);
  64. }
  65.  
  66.  
  67. int main(int argc, char *argv[])
  68. {
  69.     ft.dwHighDateTime = 0;
  70.     ft.dwLowDateTime = 0;
  71.  
  72.     obilazak(argv[1]);
  73.  
  74.     printf("Pronadeno %d datoteka vecih od %d\n", bv, VEL);
  75.  
  76.     SYSTEMTIME st;
  77.     char szLocalDate[255];
  78.  
  79.     FileTimeToLocalFileTime(&ft, &ft);
  80.     FileTimeToSystemTime(&ft, &st);
  81.     GetDateFormat(LOCALE_USER_DEFAULT, DATE_LONGDATE, &st, NULL, szLocalDate, 255);
  82.  
  83.     printf("Najstarija dat %s\n", szLocalDate);
  84.     system("pause.exe");
  85.     return 0;
  86. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement