2012-01-01 6 views
1

en collaboration avec W7 et Visual Studio. Mon problème aujourd'hui est que je ne peux pas renommer les fichiers externes en dehors de mon répertoire de projet. Rename() Fonctionne uniquement pour les fichiers locaux, a essayé de copier le fichier renommer et le remettre à sa place, mais ce n'est pas la meilleure façon de le faire à mon avis. Alors, comment pouvez-vous proposer de modifier (renommer, supprimer, etc.) les fichiers externes de votre ordinateur?C++ renommer les fichiers externes

Edit: Renommer() mentionné ci-dessus est de la bibliothèque stdio.h: http://www.cplusplus.com/reference/clibrary/cstdio/rename/ Je vais utiliser ce dans une sorte de nom de fichier automatique randomizer

+0

Afficher le code, donner une indication sur l'endroit où cette fonction Renommer() est de. Si c'est possible, ajoutez la valeur GetLastError(). – marcinj

+0

désolé, édité ajouté plus d'infos –

+0

vous devriez analyser ce que contient errno (c'est le lien que vous avez fourni), je suppose que GetLastError() devrait être mis à l'erreur de toute façon. Sur Windows 7 avec UAC activé, vous pourriez ne pas être en mesure de modifier tous les fichiers, à savoir. les fichiers créés sous les fichiers c: \ program seront placés sous C: \ Users \ ... \ AppData \ Local \ VirtualStore \. Renommer les fichiers dans les fichiers c: \ programme ne fonctionne pas réellement (appris de sa propre expérience). Vous pouvez tester votre application avec l'UAC désactivé pour éliminer ce problème au moins pour le débogage. – marcinj

Répondre

1
+0

Comment connaissez-vous Rename() de boost? – marcinj

+1

En fait, je ne pense pas que "Renommer" soit "renommer" - à la place, je suggère d'utiliser celui de Boost. – Matt