Création d'un fichier bat [RESOLU]

Création d'un fichier bat [RESOLU] - Logiciels d'entreprise - Systèmes & Réseaux Pro

Marsh Posté le 07-08-2015 à 10:51:28    

Bonjour,  
 
Je suis dans une entreprise de développement de logiciel pour médecin, et nous voulons mettre à jour notre logiciel sur nos clients qui ne sont pas dans un domaine. Nous gérons notre parc via OCS Inventory.  
Notre mise à jour comprend 6 fichiers avec une base de donnée dont un septième qui est un script en batch....
Celui ci permet de stopper notre logiciel de copier les fichiers de mise à jours dont la base de donnée et de le relancer après la copie des fichiers.
 
Mon problème est le lancement, en effet le lancement doit ce faire avec le fichier de base de donnée plus l'exe du logiciel.  
 
Voici lke contenu du fichier .bat:
;Arrêter le processus en cours  
"D:\STOCK\ARServerStop.exe"
PING 1.1.1.1 -n 1 -w 60000 >NUL
taskkill /IM 4DServer.exe /F
 
;Suppression des anciens fichiers
del "D:\xxxxxxxx Radiologie\WIN4DX\Backup.*" /q
del "D:\xxxxxxxx Radiologie\WIN4DX\MD*.*" /q
del "D:\xxxxxxxx Radiologie\WIN4DX\DS_.*" /q
del "D:\xxxxxxxx Radiologie\WIN4DX\DS\DS_*.*" /q
del "D:\xxxxxxxx Radiologie\Radiolog.RAP" /q
del "D:\xxxxxxxx Radiologie\Radiolog.MAI" /q
del "D:\xxxxxxxx Radiologie\Radiolog.NO_MAJ_DATA" /q
 
;Copie des nouveaux fichiers
move /Y "D:\STOCK\Radiolog.4DC" "D:\xxxxxxxx Radiologie\"
move /Y "D:\STOCK\Radiolog.PDF" "D:\xxxxxxxx Radiologie\"
move /Y "D:\STOCK\Radiolog.ctrl" "D:\xxxxxxxx Radiologie\"
move /Y "D:\STOCK\v40-01072015.exe" "D:\xxxxxxxx Radiologie\CCAM\"
move /Y "D:\STOCK\cacert.pem" "D:\xxxxxxxx Radiologie\Outilscacert.pem"
 
;Redémarrage du logiceil avec sa base de donnée
Start "" "D:\xxxxxxxx Radiologie\CCAM\v40-01072015.exe"
Start "" "D:\stock\RESIP_3531.exe"
Start "" "D:\xxxxxxxx Radiologie\4DServer\4DServer.exe" > Logiciel
Start "" "D:\xxxxxxxx Radiologie\Radiolog.4DC" > Base de donnée  
 
En gros les deux dernières lignes doivent se lancer ensemble.  
 
Es ce que quelqu'un peut m'aider ?  
 
Merci d'avance
 
Cordialement,


Message édité par Loganfox le 19-08-2015 à 15:29:47

---------------
Le savoir est la seule matière qui s'accroît quand on la partage "Socrate"
Reply

Marsh Posté le 07-08-2015 à 10:51:28   

Reply

Marsh Posté le 07-08-2015 à 11:11:25    

Pourquoi "ensemble" ?
La BDD doit être démarrée avant l'applicatif, non ?

Reply

Marsh Posté le 07-08-2015 à 11:29:53    

Le truc est que l'extension de la base de donnée est associée au logiciel.  
Si je lance la BDD avant, elle va lancer le logiciel qui lui va me retourner des problème de création de fichier car 4Dserveur.exe n'est pas lancé.  
Il me faudrait lancer 4Dserveur.exe en association avec radiolog.4DC
 
Merci pour ton aide :)  


---------------
Le savoir est la seule matière qui s'accroît quand on la partage "Socrate"
Reply

Marsh Posté le 07-08-2015 à 13:22:43    

Perso déjà j'utiliserais la commande SLEEP plutôt que le ping pour faire les pauses :D  
Ensuite le move plutôt qu'un copy, bof. L'idéal étant un robocopy pour du batch d'installation [:spamatounet]
 
Enfin tu es le développeur du logiciel non ? Tu ne peux pas faire un démarrage en ligne de commande avec en paramètre un fichier défini à ouvrir ? Un genre de "blabla.exe monfichier.ext" ? C'est un peu la base de prévoir des paramètres de ligne de commande, ne serait-ce que prévoir une option -debug avec un trace interne du fonctionnement.


---------------
Grippe ? Coronavirus ? Portez votre masque correctement ! :D
Reply

Marsh Posté le 07-08-2015 à 13:26:14    

ou un vrai package d'installation genre un msi ? :/

Reply

Marsh Posté le 07-08-2015 à 14:27:06    

Bonjour,  
 
Merci pour vos réponses :) Non je ne suis pas du tout développeur, et je ne sais pas faire de fichier msi.....
Le -debug je le place ou dans mon script ?  
Le but étant de lancer le fichier installer.bat via OCS de manière à pouvoir le déployer sur l'ensemble de nos clients.  
J'ai remarqué par ailleurs, que la fonction exécuter d'OCS utilise le dossier temporaire de Windows alors que le script est lancer dans le dossier Stock.... Bizarre là je comprends pas :??:  
Pourtant le but est simple arrêt de l'exe copie des fichiers et redémarrage de l'exe avec sa BDD....  
N'est il pas possible de lancer la BDD en la liant avec 4Dserveur ?  
Car si je lance juste la BDD dont l'extension est associé à 4Dserveur.exe, celui ci se lance mais une fois ouvert il se ferme... :cry:  


---------------
Le savoir est la seule matière qui s'accroît quand on la partage "Socrate"
Reply

Marsh Posté le 07-08-2015 à 14:40:50    

Sinon j'ai un exe dans le dossier stock qui regroupe l’ensemble des fichiers énumérés au début. Il fait l'installation tout seule mais le problème c'est que quand je l'exécute via un la fonction exécuter d'OCS il me dit "Installer.bat introuvable".  
Le problème est l'agent exécute le script dans un dossier temporaire de Windows....  
Quelqu'un sait-il si il y a une option d'OCS pour palier à ce problème ? :??:  


---------------
Le savoir est la seule matière qui s'accroît quand on la partage "Socrate"
Reply

Marsh Posté le 07-08-2015 à 14:50:54    

Petit détail de taille, vous l'aurez compris que le script doit être exécuté dans le dossier Stock.....


---------------
Le savoir est la seule matière qui s'accroît quand on la partage "Socrate"
Reply

Marsh Posté le 07-08-2015 à 15:25:42    

Il est pas possible de lancer un fichier exe avec un fichier ?


---------------
Le savoir est la seule matière qui s'accroît quand on la partage "Socrate"
Reply

Marsh Posté le 09-08-2015 à 00:05:37    

Justement c'est de ça que je te parle... Tout dépend de ton application, nous on ne l'a pas donc on ne peut pas te le dire.
 
Pour ton problème avec OCS, je te conseille de regarder sur leur wiki  (étant sur tablette là...) pour que tu vois les procédures de déploiement logiciel.


---------------
Grippe ? Coronavirus ? Portez votre masque correctement ! :D
Reply

Marsh Posté le 09-08-2015 à 00:05:37   

Reply

Marsh Posté le 09-08-2015 à 20:48:50    

bardiel a écrit :

Justement c'est de ça que je te parle... Tout dépend de ton application, nous on ne l'a pas donc on ne peut pas te le dire.
Pour ton problème avec OCS, je te conseille de regarder sur leur wiki  (étant sur tablette là...) pour que tu vois les procédures de déploiement logiciel.


Merci Bardiel pour ton implication !! :)  
 
Je vais essayer d'avoir plus d'information sur le logiciel en question... Mais une chose est sur c'est que les fichier 4Dserveur.exe doit ce lancer avec .4DC car son démarrage dépend de lui. A l'heure actuel, j'arrive à le lancer mais il me demande au lancement de valider la base de donnée (Juste un "ok" à faire) mais le but est que ce soit automatisé et que je puisse déployer la mise à jours sur plusieurs serveurs sans intervention humaine. C'est là qu'arrive le problème avec OCS....
 
Pour OCS ça devient plus compliqué, car j'ai longuement épluché le wiki j'ai même un bouquin sur OCS mais il n'y a évidemment pas mon cas.  :??:  
 
Disons que je dispose de deux cas de figure ;
 
Le premier c'est que je dispose d'un fichier .exe qui réuni ces fichiers et qui exécute automatiquement le fichier .bat:  
Radiolog.4DC
Radiolog.PDF
Radiolog.ctrl
v40-01072015.exe
cacert.pem
instaler.bat  

Note: Ces fichiers doivent être exécutés dans un dossier bien particulier

 
Si je déploie en utilisant la fonction "lancer" du fichier .exe pour déployer, lors du déploiement (Installation) j'ai un message d'erreur me disant qu'il ne trouve pas install.bat qui est censé se trouver dans le dossier qui sert à la mise à jour. Donc j'en conclu et eu confirmation que OCS utilise le dossier TEMP de Windows pour installer ce que l'on déploie en "Lançant" un exe avec OCS.
 
Le deuxième cas de figure est que j'utilise deux fonctions différentes d'OCS. Dans un premier temps, je déploie les fichiers énumérés précédemment (Décompresser de l'exe) en utilisant la fonction "stocker" qui consiste à déposer un/des fichier(s) ou dossier à un endroit dans l'arborescence du disque dur du destinataire du paquet.
Une fois avoir "déposés" les fichier à l'emplacement ou ils doivent être exécutés, je lance la fonction "exécuter" pour aller exécuter le fichier .bat qui est dans le dossier.
 
C'est là ou sont mes problèmes de fichier bat :)  
 
Encore merci bonne soirée :)
 
 


---------------
Le savoir est la seule matière qui s'accroît quand on la partage "Socrate"
Reply

Marsh Posté le 09-08-2015 à 20:54:02    

Et ton idée de -Debug m'intéresse mais je ne connais pas :heink:


---------------
Le savoir est la seule matière qui s'accroît quand on la partage "Socrate"
Reply

Marsh Posté le 10-08-2015 à 21:22:04    

Loganfox a écrit :

Et ton idée de -Debug m'intéresse mais je ne connais pas :heink:


Non mais là je parlais au niveau développement...


---------------
Grippe ? Coronavirus ? Portez votre masque correctement ! :D
Reply

Marsh Posté le 19-08-2015 à 15:29:17    

Bonjour,  
Je clos le sujet car le développeur de l'entreprise a modifier la structure de son paquet.  
 
Merci a vous ! :)


---------------
Le savoir est la seule matière qui s'accroît quand on la partage "Socrate"
Reply

Marsh Posté le 19-08-2015 à 18:42:35    

J'espère qu'il a mis en place quelque chose de bien moins crade que toi :/

Reply

Marsh Posté le 19-08-2015 à 22:58:59    

Sympa merci je tâcherai de lui demander. Comme ça tu sauras quelque chose dons tu en à rien à faire. Pour quelque chose dont j'en ai rien à faire.....
Comme toi ce soir.
 
Merci de ton passage et tes super conseils.....


---------------
Le savoir est la seule matière qui s'accroît quand on la partage "Socrate"
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed