cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 26 nov. 2004 à 13:40
Peut-être que le temps passé entre le close et le filecopy n'est pas suffisant pour le système pour libérer les ressources rattachées au fichier ouvert.
Je te suggère de faire un DoEvents, et si ca ne suffit pas, un sleep :
bd1=opendatabase("mabase1.mdb")
bd2=opendatabase("mabase2.mdb")
bd1.close
bd2.close
DoEvents
'Si ca ne suffit pas : sleep(100)
filecopy ("mabase1.mdb"), ("mabase2.mdb")
_______________________________________
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 26 nov. 2004 à 15:48
càd il ne fonctionne pas correctement ??? Le download ne démarre pas ? Il coupe au milieu ? Le fichier téléchargé est corrompu ?
Es-tu sûr que tes fichiers sont bien fermés et qu'aucune référence n'est définie (notament au niveau des contrôles) ?
_______________________________________
csemde
Messages postés32Date d'inscriptionmercredi 7 mai 2003StatutMembreDernière intervention15 janvier 2010 26 nov. 2004 à 16:10
Le download coupe au milieu.
Oui j'utilise plusieurs control adodc qui font référence à la base de données.
mais je me dis qu'en fermant la base juste avant d'appeler Filecopy cela devrait pouvoir marcher.
Le pouvoir appartient à celui
qui détient l'information.
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 26 nov. 2004 à 16:16
Il faut bien que les contrôles soient déchargés avant de copier ton fichier !
P.S. : il arrive en effet que le download soit interrompu par notre hébergeur pour des raisons inconnues. Pour y remédier il faut retélécharger le fichier (qui reprend là où il s'est arrêté normalement).
_______________________________________
csemde
Messages postés32Date d'inscriptionmercredi 7 mai 2003StatutMembreDernière intervention15 janvier 2010 26 nov. 2004 à 16:53
En fait j'utilise la commande FileCopy dans un MDIForm. Donc je pense qu'il n'a pas encore chargé les controles qui font référence à la base, qui eux se trouvent dans les diverses feuilles filles. je n'ai placé aucun controle dans le mdiForm qui fasse référence a la base.
PS: Meme en retelechargeant il coupe toujours au milieu.
Le pouvoir appartient à celui
qui détient l'information.
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 26 nov. 2004 à 17:10
Tout dépend à quel moment tu appelle la copie : si tu la fait à la fin du programme, et que des feuilles non pas été déchargées de la mémoire (avec un Unload(form)), alors c'est qu'il existe encore des références à ta base dans des contrôles !
P.S. : ProgOtoP étant très lent ses derniers temps, je pense que ton problème vient de là : notre hébergeur doit faire de la maintenance sur ses serveurs, et du coup, les téléchargements ne doivent pas aboutir :(
_______________________________________
csemde
Messages postés32Date d'inscriptionmercredi 7 mai 2003StatutMembreDernière intervention15 janvier 2010 26 nov. 2004 à 17:31
OK tu as raison.
J'ai essayé d'éxécuter la commande filecopy dans un nouveau projet à l'évènement Load d'une feuille vierge et pas de bug. ca marche. il faut donc que je décharge tous les controles faisant référence à la base dans mon projet.
Mais dans ce cas y a t il une astuce pour cela car j'utilise plusieurs controles dans divers feuilles. il serait fastidieux de les décharger un à un dans une procédure spéciale juste avant l'appel de la commande FileCopy.
Le pouvoir appartient à celui
qui détient l'information.