Если вы используете Win32 API, подумайте о поиске функций CopyFile или CopyFileEx.
Вы можете использовать первое способом, аналогичным следующему:
CopyFile (szFilePath.c_str(), szCopyPath.c_str (), FALSE);
Это скопирует файл, найденный в содержимом szFilePath, в содержимое szCopyPath и вернет FALSE, если копирование было неудачным.Чтобы узнать больше о причинах сбоя функции, вы можете использовать функцию GetLastError (), а затем посмотреть коды ошибок в документации Microsoft.