Bonjour,
Je suis en train de terminer l'empaquetage de mon application MS-Access et pour ce faire, j'ai besoin de savoir si Access est installé sur le poste de mon client ou pas...
Ceci afin d'installer automatiquement, soit la version sans le runtime (si Access est présent), soit la version avec le Runtime (si Access n'est pas installé)
Je me casse les dents depuis quelques temps déjà avec mon fichier batch et malgré de nombreuses recherches, nombreux essais, je dois m'avouer vaincu et demander de l'aide.
Voici mon code:Quelqu'un(e) pour m'expliquer ce qui cloche dans ce code ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 @echo off REM Attribution du nom du disque courant (de la racine) à la variable "fold" (C:, D:, ou autre) setlocal @for %%n in (%0) do set fold=%%~dpn chcp 1252 REM Tentative d'ouvrir "base.accdb" (bdd vide) pour tester la présence ou non de MS-Access sur le poste du client Start /WAIT msaccess.exe %fold%\Base.accdb 2>/dev/null REM Interception de l'erreur: REM 1. S'il n'y a pas d'erreur on lance l'installation sans runtime REM 2. Si une erreur est interceptée, on installe avec le runtime if %ERRORLEVEL% NEQ 0 ( goto :batch2 ) else ( goto :batch1 ) REM Installation sans runtime :batch1 cls call %fold%\Acc\Setup.exe cls goto :fin REM Installation avec le runtime :batch2 cls call %fold%\Rnt\Setup.exe cls goto :fin :fin endlocal exit
En effet, le ERRORLEVEL me semble totalement inopérant...
Un grand, grand merci d'avance :-)
Partager