![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| Runtime Forum destiné à recevoir toutes vos questions concernant le Runtime (empaquetage, déploiement...) |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Futur Membre du Club
![]() Date d'inscription: avril 2008
Messages: 30
|
Bonjour,
J'ai trouvé dans un tuto de ce site, un exemple VBS (et VBA) qui permet de sauvegarder la base en cours : Code :
Dim fso As Object, strDest As String strDest = CurrentProject.Path & "\" & _ Left(CurrentProject.Name, Len(CurrentProject.Name) - 4) & _ ".bak." & Right(CurrentProject.Name, 3) Set fso = CreateObject("Scripting.FileSystemObject") fso.CopyFile CurrentProject.FullName, strDest Set fso = Nothing Naïvement, peut-on créer une tache programmée Windows qui lance le runtime access 2007 avec une option qui permettrait d'exécuter la fonction de sauvegarde, puis de sortir après exécution ? Bizzarement, je n'ai pas trouvé grand chose sur le forum (recherche runtime sauvegarde)...Merci d'avance pour une piste |
|
|
|
|
|
#2 (permalink) |
|
Expert Confirmé Sénior
![]() Date d'inscription: octobre 2005
Messages: 2 545
|
Je ne l'ai jamais fait mais je pense que c'est tout à fait faisable. Access vient avec une option rarement utilisée qui est la ligne de commande. Je l'ai vérifié pour les versions jusqu'à 2002 mais je ne pense pas que cela ai été supprimé.
À partir de la ligne de commande tu peux appeler une macro et donc faire ce que tu veux une fois dans la base. La commande à passer dans une fenêtre DOS ou dans un .bat ressemble à cela. Code :
c:\cheminVersAccessExe\MSAccess.exe c:\cheminVersTaBD\nomTaBD.mdb /x NomTaMacro Il y a d'autres options disponibes, cherche sur "Options de la ligne de commande" dans l'aide tu devrais les trouver.
__________________
Merci de ne pas poster pour des pb techniques dans les messages privés. |
|
|
|
|
|
#4 (permalink) |
|
Expert Confirmé Sénior
![]() Date d'inscription: octobre 2005
Messages: 2 545
|
Tu as déjà ton bout de code, il suffit de le mettre dans une procédure (ou une fonction peut-être) publique et de l'appeler de la macro.
A+
__________________
Merci de ne pas poster pour des pb techniques dans les messages privés. |
|
|
|
|
|
#5 (permalink) |
|
Futur Membre du Club
![]() Date d'inscription: avril 2008
Messages: 30
|
Bonsoir Marot_r et merci pour ton aide,
Effectivement, ca marche correctement pour la sauvegarde mais ce qui me gêne c'est que l'application s'ouvre normalement. J'aurais souhaité une sauvegarde automatique et périodique mais qui n'ouvre pas l'application en interactif : je me demande si le mieux ne serait pas finalement d'utiliser Windows directement, Code :
"C:\Program Files\Microsoft Office\Office12\MSACCESS.EXE" "C:\Documents and Settings\Pierre\Bureau\livraison\BD26.accdb" /runtime /x SauvegardeBase |
|
|
|
|
|
#6 (permalink) |
|
Expert Confirmé Sénior
![]() Date d'inscription: octobre 2005
Messages: 2 545
|
Je pense que oui, ce sera plus léger que d'ouvrir Access pour une simple copie de fichier.
Je te conseille par contre de faire un .bat qui va faire cela. Comme cela tu peux tester ton .bat autant de fois que tu veux. Après tu n'as plus qu'a programmer l'exécution du .bat. A+
__________________
Merci de ne pas poster pour des pb techniques dans les messages privés. |
|
|
|
|
![]() |
![]() |
||
sauvegarde possible ?
|
||
| Outils de la discussion | |
|
|