I'm having a look at the code of FastCopy. I want to add some option so that files are deleted to the recycle bin instead of permanently.
The first issue I came across is the way paths are stored - as a BYTE[1]
type. I thought it might be some pointer pointing to the real path, but probably not if it's just one byte. See below for the full structure:
struct MoveObj {
_int64 fileID;
_int64 fileSize;
enum Status { START, DONE, ERR } status;
DWORD dwFileAttributes;
BYTE path[1];
};
Any idea what it means?
My second issue is that I need to convert this string to some scary MS type called "PCZZTSTR" so that it can be used with a SHFILEOPSTRUCT structure. Any suggestion how I could do this conversion?