Copie du prog lui meme

Signaler
Messages postés
7
Date d'inscription
jeudi 26 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2007
-
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
-
Bonjour je suis (comme vus l'aurez deviner ) débutant en programmation et je voulait savoir si le programme pouvait se déplacer lui meme sans définir le chemin d'accèe à se programme (en gros je ne veut pas ceci : CopyFile "C:/****.exe"; "C:/*****.exe" ) mais en utlisant (enfin je pense) "me" si il y a une autre possibilité sa ne me dérange pas tant que je ne voit pas le chemin d'accès a se programme.

Merci

Mirages51

17 réponses

Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut,

Regarde du côté de App.Path

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
4030
Date d'inscription
mardi 13 mai 2003
Statut
Modérateur
Dernière intervention
23 décembre 2008
22
Salut,

Qui dit "déplacer" dit "copier puis supprimer l'original". Or ton programme pourra certes se copier, mais ne pourra a priori pas se supprimer tout seul (puisqu'il est à ce moment-là en cours d'exécution).





Manu


--------------------------------------------------------------------------------------------
Avant de poster un message, n'oubliez pas de consulter le reglement.
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut,

Effectivement comme le dit Econs(salutations), il faut pour cela utiliser l'instruction : Kill, et ne le faire quand sorti de prog(évènement Unload, normallement cela devrait fonctionné)...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
7
Date d'inscription
jeudi 26 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2007

Se n'est pas grave si il ne disparait pas et copier ne signifie en aucunement "supprimer l'originale" parcontre couper si moi je ne veut que copier c'est tout.

Mirages51
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
"...normallement cela devrait fonctionné..."

A priori, non, cela ne devrait pas fonctionner, car même si tu le fait sur le unload, ou même sur le terminate, au moment ou tu lancera la commande kill, le programme sera toujours en fonctionnement et vérouiller. Par conséquent la commande echoueras.

Il faut soit passer par un process extérieur, mais vient le problème alors de la suppresion de ce process après travail (le problème est le même). Soit alors arriver à détacher le process de ton programme du fichier physique sur le disque et ainsi dévérouiller le fichier. Jusqu'à maintenant j'ai jamais réussi.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut Casy,

Est bien je viens de faire l'essai à l'instant en compilant mon projet en exe et en le lanssant et cela fonctionne

J'ai mit dans mon évènement Unload ceci :

     SourceFile = App.Path & "" & "Quick_exp.exe"
     DestinationFile = App.Path & "\Sauve base" & "Quick_exp.exe"
    'Copie le fichier source dans le fichier cible.
     On Error Resume Next
     Err.Clear
     FileCopy SourceFile, DestinationFile

Pas de plantage, l'exe est bien copié dans le répertoire sauve base...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Copier oui, no soucy, supprimer non. Kill ne marchera pas

Mais bon comme notre amis veut simplement copier, ça roule

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
7
Date d'inscription
jeudi 26 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2007

ok très bien merci je n'ai pas encore essayer mais si sa ne marche pas je vous copie le code merci enormement

Mirages51
Messages postés
7
Date d'inscription
jeudi 26 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2007

Bon je vous le dit tout de suite je n'y arrive pas  pourrait tu me donner le code entier de ton prog. stp exploreur ?

Mirages51
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
salut,

beh le code, Exploreur te l'a donné^^
Quand tu as besoin de copier ton executable,

' la tu détermine le chemin et le nom de ton
application
     SourceFile = App.Path & "" & App.EXEName & ".exe"
' Ici tu indiques le chemin
et le nouveau nom pour la destination
     DestinationFile = "C:\Le Chemin que tu
veux" & "Nouveau
nom.exe"
'Copie le fichier source dans le fichier
cible.
     On Error Resume Next
     Err.Clear
     FileCopy SourceFile, DestinationFile

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
Messages postés
7
Date d'inscription
jeudi 26 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2007

j'ai fait exactement pareil sauf que : il me met un tas d'erreure : sourcefile n'est pas déclaré  ; destination file n'est pas déclaré ; app n'est pas déclré je vous rappel que je marche sous XP et que je programme sous VB.net expresse et .... que je suis un put*** de newbie  et donc j'ai tester et je vous copie la source complete de mon programme lol:

Module

Module1

Sub main()SourceFile = App.Path &

"" & App.EXEName &
"tittest.exe"DestinationFile =

"C:" &
"testprog.exe"

On
Error
Resume
NextErr.Clear()

FileCopy(SourceFile, DestinationFile)

End
SubEnd

Module

Mirages51
Messages postés
7
Date d'inscription
jeudi 26 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2007

je rectifie je l'ai ecrit comme sa:

Module

Module1

Sub main()
SourceFile = App.Path &

"" & App.EXEName &
"tittest.exe"DestinationFile =

"C:" &
"testprog.exe"

On
Error
Resume
NextErr.Clear()

FileCopy(SourceFile, DestinationFile)

End
Sub
End

Module

Mirages51
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Beh tu m'étonnes que ça marche pas. T'es en vb .net alors que tu as posté en VB6...
Donc nous on te donne des solutions VB6.

Déjà, commence par déclarer les 2 variables :
Dim SourceFile, DestinationFile As String

Pour App, je sais pas par quoi il est remplacé en VB .Net, rencarde toi dans ton aide quel objet représente ton application.

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
App.path est remplacé par :

Application.StartupPath --> donne le chemin d'installation de l'application

ou

Application.ExecutablePath --> Donne le chemin d'installation de l'application incluant le nom de l'executable.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
Un exe en cours doit créer un *.bat contenant commande de le détruire, ShellExecute sur le bat juste avant de fermer exe. Ajouter commande d'auto suppression dans le bat (lui il peut).

ciao...
BruNews, MVP VC++
Messages postés
7
Date d'inscription
jeudi 26 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2007

aïe aïe aïe Aïe quelqu'un expérimenté pourrait m'envoyer ou me poster un code complet sans fautes car la pour moi vous parlez javanais .... (malgrés que se soit de la programmation ...) s'il vous plait je suis en vb.net pouvez vous me poster un code ou m'envoyer (sur le site) le tuto. avec le fragmen de code svp? Merci!!!

Mirages51
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut,

Heu...là tu abuses quand même!!!Déjà que toutes les personnes(sauf moi) qui t'on répondu sur ton topic sont des personnes expérimentées..donc respect envers elles SVP(fais attention à comment tu dis les choses...!!!)

Maintenant pour ton problème, Casy t'a répondu, cherche un peu avec ton aide en ligne...

A+
Exploreur

 Linux a un noyau, Windows un pépin