Im пытается скопировать каталог в новое место. Поэтому я использую SHFileOperation/SHFILEOPSTRUCT следующим образом:SHFileOperation/SHFILEOPSTRUCT
SHFILEOPSTRUCT sf;
memset(&sf,0,sizeof(sf));
sf.hwnd = 0;
sf.wFunc = FO_COPY;
dirName += "\\*.*";
sf.pFrom = dirName.c_str();
string copyDir = homeDir + "\\CopyDir";
sf.pTo = copyDir.c_str();
sf.fFlags = FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR | FOF_NOERRORUI;
int n = SHFileOperation(&sf);
if(n != 0)
{
int x = 0;
}
Так что я установить значения, как указано выше. Файл, который я создал в папке (я закрыл Handle, чтобы он был в порядке). Вызов SHFileOperation возвращает 2, но я не могу найти где-нибудь, где объясняются эти коды ошибок. Кто-нибудь знает, где я могу узнать, что означает 2, или у кого-нибудь есть идеи, почему это может не работать? Cheers
двойной null завершено. Итак, я добавляю \ 0 до конца каждого? – discodowney
В принципе, да. – hmjd
Не имеет значения. Я все еще получаю 2 от SHFileOperation. Обе папки существуют, и в папке pFrom есть файл, поэтому я не знаю, какой файл он не может найти. – discodowney