-
PROHARDVER!
Ú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!
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- AKCIÓ! MSI B450M R5 5500 16GB DDR4 512GB SSD GTX 1070 8GB Rampage SHIVA Kolink KL 500W
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Bomba ár! HP Elitebook 850 G6 - i5-8GEN I 8GB I 256GB SSD I 15,6" FULLHD I Cam I W11 I Gari!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32/64GB RAM RTX 4060Ti 8GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest