-
Fototrend

Új hozzászólás Aktív témák
-
pmonitor
aktív tag
válasz
nevemfel
#17791
üzenetére
>de ez elvileg nem terápiás-, hanem szakmai topik.
Na akkor 1 kis "szakmai" probléma. Ezt kellene optimalizálni. Bármilyen kis optimalizálásnak örülnék, de az sem ártana, ha jelentős optimalizálás lenne...
...
typedef struct FAJLKERESESEREDMENYE
{
int Fajldarab;
int Mappadarab;
long long Fajlhossz;
wchar_t* Fajlok;
wchar_t* Mappak;
} FAJLKERESESEREDMENYE;
...
void search(wchar_t* sPath, wchar_t* sFileMask, FAJLKERESESEREDMENYE* pFke, char almappae, char mappae, char fajle)
{
if (!out)
{
int i = 0, n = 0;
wchar_t* aktFolders = tempFolders;
WIN32_FIND_DATA WFD;
HANDLE iSearchHandle = NULL;
int bContinue = 1;
wchar_t* sPath_1 = (wchar_t*)GlobalAlloc(LMEM_FIXED, (wcslen(sPath) + wcslen(sFileMask) + 1) * sizeof(wchar_t));
if (sPath_1 == INVALID_HANDLE_VALUE) MessageBox(0, L"memória", L"Üzenet", 0);
if (almappae)
{
wcscpy(sPath_1, sPath);
wcscat(sPath_1, L"*");
iSearchHandle = FindFirstFile(sPath_1, &WFD);
if (INVALID_HANDLE_VALUE == iSearchHandle)
{
}
else
{
while (bContinue)
{
if (wcscmp(WFD.cFileName, L".") && wcscmp(WFD.cFileName, L".."))
{
int s;
if ((WFD.dwFileAttributes & 16) == 16)
{
wcscpy(tempFolders, sPath);
wcscat(tempFolders, WFD.cFileName);
wcscat(tempFolders, L"\\\0");
s = wcslen(tempFolders);
tempFolders += s;
++tempFolders;
++n;
}
}
bContinue = FindNextFile(iSearchHandle, &WFD);
}
bContinue = FindClose(iSearchHandle);
}
}
bContinue = 1;
wcscpy(sPath_1, sPath);
wcscat(sPath_1, sFileMask);
iSearchHandle = FindFirstFile(sPath_1, &WFD);
if (INVALID_HANDLE_VALUE == iSearchHandle)
{
}
else
{
while (bContinue)
{
if (wcscmp(WFD.cFileName, L".") && wcscmp(WFD.cFileName, L".."))
{
int s;
if ((WFD.dwFileAttributes & 16) == 16)
{
if (mappae)
{
wcscat(WFD.cFileName, L"\r\n");
wcscpy(pFke->Mappak, sPath);
wcscat(pFke->Mappak, WFD.cFileName);
s = wcslen(pFke->Mappak);
pFke->Mappak += s;
++(pFke->Mappadarab);
}
}
else
{
if (fajle)
{
wcscpy(pFke->Fajlok, sPath);
wcscat(pFke->Fajlok, WFD.cFileName);
wcscat(pFke->Fajlok, L"\r\n");
s = wcslen(pFke->Fajlok);
pFke->Fajlok += s;
++(pFke->Fajldarab);
}
}
}
bContinue = FindNextFile(iSearchHandle, &WFD);
}
bContinue = FindClose(iSearchHandle);
}
GlobalFree(sPath_1);
if (almappae)
{
for (; i < n; i++, aktFolders += (1 + wcslen(aktFolders)))
{
search(aktFolders, sFileMask, pFke, almappae, mappae, fajle);
}
}
}
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- BMW topik
- Okos Otthon / Smart Home
- Milyen notebookot vegyek?
- Hyundai, Kia topik
- PlayStation 5
- Samsung Galaxy A56 - megbízható középszerűség
- Óvodások homokozója
- Vigneau interaktív lokálblogja
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- További aktív témák...
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


