Для операций FO_COPY
и FO_MOVE
член pTo
в SHFILEOPSTRUCT
должен быть местоположением, то есть каталогом, а не именем файла назначения. Каталог может не существовать, и в этом случае он создается, даже если он выглядит как имя файла.
Вы должны либо просто указать "C:\\SomeOtherDiretory\0"
, либо использовать FO_RENAME
.
Что касается того, почему ваш файл не создан, вы проверили возвращаемое значение?