Существует ли какая-либо API-оболочка Robocopy?[закрыто]
Вопрос
Robocopy - это лучший надежный и многофункциональный способ пакетного копирования файлов в Windows.Однако это инструмент командной строки.
Я ищу библиотеку / API, с помощью которой я мог бы сделать то же самое в своей программе.Я попытался использовать Process.Start (), но тогда я должен захватить и проанализировать стандартный вывод для индикатора выполнения и не могу перезаписать поведение.
Например, исключить файловую базу из функции делегирования;переименуйте файл, если он более старый;(повторно) запустите копирование на основе некоторых событий.
Я предполагаю, что copy, xcopy, рекурсивное копирование и т.д. Должны быть наиболее часто изобретаемыми программистами колесами.Есть ли какой-нибудь API / библиотека, которую я пропустил?
Решение 3
Спасибо за ваши ответы, и после еще некоторых исследований я пришел к выводу, что API не существует.
Максимальная степень повторного использования функции Robocopy - это разветвление дочернего процесса с помощью аргументов командной строки.
Другие советы
Я понимаю, что это очень старый пост, но на всякий случай, если кто-то наткнется на него...
Я написал оболочку для robocopy на c # под названием RoboSharp.Он делает именно то, что первоначально запрашивал OP.
Кажется, есть какой-то материал, который накладывает на него графический интерфейс, например Синхронизация изображений и файлов в Windows Vista и XP с помощью Microsoft SyncToy (форум здесь) и Утилита Spotlight - Графический интерфейс Robocopy.Я пока не нашел API, равно как и того, предоставляет ли Robocopy управление в стиле ActiveX.
Редактировать:Довольно обширное онлайн-описание Робокопия говорит что - то о
"Задания" Robocopy и опция "Отслеживать исходный код" предоставляют альтернативу настройке запланированной задачи для запуска пакетного файла с помощью команды RoboCopy.
Могло бы помочь.А может, и нет.