Я пытаюсь скопировать файл из одного места в другое с помощью SHFileOperation:SHFileOperation создает пустой каталог вместо файла
SHFILEOPSTRUCT fileop;
fileop.hwnd = 0;
fileop.wFunc = FO_COPY;
fileop.pFrom = L"C:\\SomeDirectory\\SomeName.jpg\0";
fileop.pTo = L"C:\\SomeOtherDirectory\\SomeName.jpg\0";
fileop.fFlags = FOF_NOCONFIRMATION | FOF_NOERRORUI | FOF_SILENT;
fileop.fAnyOperationsAborted = FALSE;
fileop.hNameMappings = 0;
fileop.lpszProgressTitle = 0;
SHFileOperation(&fileop);
Проблема заключается в том, что вместо того, чтобы получить копию SomeName.jpg в SomeOtherDirectory пустой каталог с именем SomeOtherDirectory \ SomeName.jpg создан, любые подсказки?
Но MSDN (http://msdn.microsoft.com/en-us/library/bb759795%28VS.85%29.aspx) говорит, что 'pTo' is * Указатель на целевой файл или имя каталога *. – Naveen
@Naveen: вы должны прочитать документацию для 'wFunc', а также посмотреть, как она используется. –
Нет, это тоже не работает. Если папка указана в качестве адресата, для таких файлов ничего не происходит, они либо превращаются в папки, либо игнорируются SHFileOperation. Ошибка возникает только для некоторых файлов. Я работаю над этим следующим образом: 'if (! CopyFile (...)) SHFileOperation (...);' – GrayFace