Copie du prog lui meme

Mirages51 Messages postés 7 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 11 juin 2007 - 9 juin 2007 à 12:30
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 - 11 juin 2007 à 18:45
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

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
9 juin 2007 à 12:32
Salut,

Regarde du côté de App.Path

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
9 juin 2007 à 13:03
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.
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
9 juin 2007 à 13:11
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

 
0
Mirages51 Messages postés 7 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 11 juin 2007
9 juin 2007 à 13:15
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
9 juin 2007 à 13:18
"...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
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
9 juin 2007 à 13:47
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

 
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
9 juin 2007 à 13:50
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
0
Mirages51 Messages postés 7 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 11 juin 2007
9 juin 2007 à 15:30
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
0
Mirages51 Messages postés 7 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 11 juin 2007
9 juin 2007 à 15:35
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
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
9 juin 2007 à 16:13
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
0
Mirages51 Messages postés 7 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 11 juin 2007
9 juin 2007 à 16:36
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
0
Mirages51 Messages postés 7 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 11 juin 2007
9 juin 2007 à 16:38
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
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
9 juin 2007 à 16:41
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
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
9 juin 2007 à 16:46
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
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
9 juin 2007 à 21:21
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++
0
Mirages51 Messages postés 7 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 11 juin 2007
11 juin 2007 à 18:24
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
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
11 juin 2007 à 18:45
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

 
0
Rejoignez-nous