Page 1 of 1
[WCX] Call ProcessFileW also for directories
Posted: 2019-11-05, 13:13 UTC
by remittor
Now TotalCmd itself creates directories and set Modified Time.
But in my WCX-plugin I want to set other times for directories (ctime and atime).
Re: [WCX] Call ProcessFileW also for directories
Posted: 2019-11-06, 07:56 UTC
by remittor
Approximate algorithm:
Code: Select all
struct wcx_cache_item * file_item;
tHeaderDataEx headerData;
while(wcx->ReadHeaderEx(wcx->hArcData, &headerData) != E_END_ARCHIVE) {
file_item = wcx->cache->find_by_name(headerData.FileName);
if (!file_item)
continue;
DestName = create_dest_name(DestPath, headerData.FileName);
if (file_item->is_dir()) {
CreateDirectoryW(DestName);
/*wcx->ProcessFileW(wcx->hArcData, PK_SKIP, NULL, NULL);*/ // current version
wcx->ProcessFileW(wcx->hArcData, PK_EXTRACT, NULL, DestName); // proposed version
} else {
wcx->ProcessFileW(wcx->hArcData, PK_EXTRACT, NULL, DestName);
}
}
Re: [WCX] Hack ProcessFileW for directories
Posted: 2019-11-25, 12:07 UTC
by remittor
I made a workaround to solve this problem:
GitHub project PAXZ.WCX
This hack works stably!