Question

Robocopy est la meilleure fiabilité et disposent ainsi riche pour copier des fichiers batch sous Windows. Cependant, il est un outil de ligne de commande.

Je cherche une bibliothèque / API que je pouvais faire la même chose dans mon programme. J'ai essayé d'utiliser Process.Start (), mais je dois capturer et d'analyser stdout pour barre de progression et aucun moyen de le comportement Ecraser.

Par exemple, excluez base de fichier sur la fonction de délégué; renommer le fichier si elle est plus ancienne; (Re) commencer la copie en fonction de certains événements.

Je suppose que la copie, xcopy, copie récursive et etc, devraient être les la plupart des programmeurs de roue de fréquence ne réinventent. Y a-t-il une API / bibliothèque, je manqué?

Était-ce utile?

La solution 3

Merci pour vos réponses, et après quelques recherches, je crois que l'API n'existe pas.

Le degré maximum de réutilisation de la fonction de Robocopy est bifurquer un processus enfant avec des arguments de ligne de commande.

Autres conseils

Je me rends compte que c'est un poste très vieux, mais juste au cas où quelqu'un trébuche sur elle ...

J'ai écrit une enveloppe pour robocopy en c # appelé RoboSharp. Il fait exactement ce que l'OP initialement demandé.

https://github.com/tjscience/RoboSharp

Il semble y avoir des choses là-bas qui met une interface graphique sur elle, par exemple fichiers images et Synchroniser dans Windows Vista et XP Utiliser (forum ) de Microsoft SyncToy et Utility Spotlight - Robocopy GUI . Je ne l'ai pas trouvé une API encore, ni si Robocopy contrôle de style expose ActiveX.

Modifier : La assez grande description en ligne de Robocopy dit quelque chose sur

  

Robocopy « emploi » et l'option « source MONITEUR » fournir une alternative à la mise en place d'une tâche planifiée pour exécuter un fichier batch avec une commande RoboCopy.

peut aider. Peut-être pas.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top