begin process at 2012 05 29 01:07:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

Copier un fichier dans le répertoire précédent


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Copier un fichier dans le répertoire précédent

mercredi 3 octobre 2007 à 23:34:50 | Copier un fichier dans le répertoire précédent

papi2

Bonjour,

Je voudrais copier un "exe" à l'extérieur de son répertoire...mais je n'ai trouvé aucune solution.
Est-ce-que quelqu'un pourraît m'aider ?
J'utilise "Dev-C++ 4.9.9.2".

Voici ma recherche:

char Buff[MAX_PATH];
GetModuleFileName(NULL, Buff, MAX_PATH);
MessageBox(0, Buff, "Chemin et nom de ''mon_fichier.exe'' qui est en cours.", 0);

char* d = strrchr(Buff, '\\');
*d = 0;
MessageBox(0, Buff, "Chemin qui est en cours moins le nom de ''mon_fichier.exe'',0);

char* f = strrchr(Buff, '\\');
*f = 0;
MessageBox(0, Buff, "Chemin qui est en cours moins le répertoire de ''mon_fichier.exe'' ", 0);

CopyFile("autre_fichier.exe", Buff, 1);//je voudrais copier ''autre_fichier'' dans ''Buff'' qui est le répertoire en dessus de celui de l'exécutable en cours. Et là ça ne marche pas...

Si vous pouviez m'aider...
Merci.

jeudi 4 octobre 2007 à 00:13:50 | Re : Copier un fichier dans le répertoire précédent

SAKingdom

Membre Club
Réponse acceptée !
Hein ????
J'ai pas compris grand chose.

D'après le titre et quelques morceaux de ton post, tu souhaite copier le exe courant dans le répertoire précédent.

Donc c'est simple:
On récupère le chemin de l'exe.
On remonte vers le dernier \. On sauvegarde la position
On continue de remonter vers l'avant dernier \.
On vérifie qu'on à pas dépassé le buffer.
On copie dans un autre buffer tout le chemin jusqu'à l'avant dernier \
On concatène le nom du fichier grâce à la sauvegarde.
On copie.

char lpPath[300], *pPath = lpPath+GetModuleFileName(0, lpPath, 300);
char *pFileName;

while(*pPath-- != '\\'); pFileName = pPath+1;
while(*pPath != '\\') pPath--;

if(pPath >= lpPath) {
    char lpCopyPath[300], pPos = (pPath-lpPath);

    strncpy(lpCopyPath, lpPath, pPos);
    strcpy(lpCopyPath+pPos, pFileName);

    CopyFile(lpPath, lpCopyPath, 0);
}


C++ (@++)

jeudi 4 octobre 2007 à 00:17:59 | Re : Copier un fichier dans le répertoire précédent

SAKingdom

Membre Club
Oups petite erreur à la déclaration de pPos.
Ce n'est pas un char mais un int:
int pPos = (pPath-lpPath);

C++ (@++)

jeudi 4 octobre 2007 à 15:39:01 | Re : Copier un fichier dans le répertoire précédent

papi2

Bonjour SAKingdom,

Merci beaucoup.
Ca fonctionne très bien.
En fait je voulais copier un fichier avec celui que j'avais ouvert dans le répertoire précédent.
Grace à toi j'y suis arrivé...!
Merci encore.

Papi2


Cette discussion est classée dans : fichier, exe, répertoire, copier, buff


Répondre à ce message

Sujets en rapport avec ce message

Chemin de l'exe [ par Ziman ] 'Jour tout le monde,je suis face à un petit soucis. J'aimerai copier un fichier dans le répertoire système. J'arrive à récupèrer dans une chaine de ca Comment copier un fichier dans un repertoire particulier [ par clcat ] Salut,Mes connaissances en C++ ne sont pas extraordinaires, ce que je veux faire me parait impossible, et le temps me manque terriblement.J'ai un fich copier et déplacer des fichier [ par vangeurmasker ] Bonjour Je cherche des fonctions permetant de déplacer, copier, et rennomer un fichier. Les dossiers de départ et d'arrivée ne sont pas forcément sur quel programme pour modifier un exe [ par ata100t ] super neuneu en programmation mais tres curieux, (rester au dos et fichier .bat)je souhaite modifier servudaemon.exe histroire de comprendre comment c Rotation d'un fichier pdf [ par Lepripri ] Bonjour à tous, je recherche un moyen d'effectuer une rotation de 180° d'un pdf d'une seule page provenant d'un copieur (il s'agit donc d'une image). Copier fichier [ par anonyme_man_in_this_world ] salut, est il possible qu'un programme se fait copier par lui meme dans un repertoire ? merçi d'avance Updating Resources [ par mogwai93 ] BonjourJe cherche à mettre à jour une ressource d'une executable.Cette ressource est un fichier que je charge en memoire puis que j'insere dans l'exes copier un fichier txt dans un CString [ par enrageur ] Je voudrais lire un fichier TXT et faire du traitement dedans, du style aller chercher des donnees. Pour cela j'utilise la classe CFile et je copy le Pb de création fichier dans un répertoire donné [ par MasterShadows ] Salut à tous,voilà, je travaille sur mon pack maker version 3.0 (avec interface windows)et à un moment donné, je veux que dans un édit box on écrive l pb encoding Base64 [ par mailer ] J'ai récupéré cette méthode pour encoder un fichier en base64 mais elle plante au niveau du 1er fprintf. Quelqu'un a t-il une solution??? Merci #defi


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales