C:\Program Files (x86)\Trend Micro\OfficeScan\PCCSRV\Admin\Utility\ClientPackager
run(r'"OfficeScanWAPT.exe"')
Le fichier SvrSvcSetup.exe se trouve bien à la racine du paquet WAPT ?
Il faudrait essayer de lancer la même commande manuellement avec les droits SYSTEM pour voir si ça fonctionne, vous pouvez faire ça à l'aide de PsExec [1] en ouvrant un shell SYSTEM comme ceci : PsExec.exe -i -s -d cmd
Vous pouvez sinon faire un print de la commande au moment de l'envoie pour vérifier qu'elle est bonne :
print(r'"%s" -stop_csa'%uninstallexe1)
Sinon, pour lancer une action à l'ouverture de session uniquement, vous pouvez utiliser la fonction session_setup() [2].
[1] https://technet.microsoft.com/en-us/sysinternals/bb897553
[2] Voir la réponse d'Hubert sur ce thread : http://lists.tranquil.it/pipermail/wapt/2015-September/001293.html
Cordialement,
Bastien
Le 24/05/2016 à 11:12, Benjamin MINGUY a écrit :
Voici les variables:
uninstallkey = []
uninstallexe1 = os.path.abspath(makepath('SvrSvcSetup.exe'))
uninstallold = makepath('c',programfiles32,'Trend Micro','OfficeScan Client','ntrmv.exe')
Ps : j'ai mis os.path.abspath(makepath('SvrSvcSetup.exe')) pour avoir le chemin absolu, afin de tester si le problème pouvais venir de la. mais je pense que je peux enlever la variable et mettre directement car ca n'a rien changé:
run("SvrSvcSetup.exe" -stop_csa')
Le 24 mai 2016 à 10:59, Bastien HERMITTE <bhermitte@b2pweb.com> a écrit :
Bonjour,
Quelle est la valeur définie pour la variable uninstallexe1 ?
Bastien
Le 24/05/2016 à 10:53, Benjamin MINGUY a écrit :
C'est seulement une partie du code, mais cela fonctionne parfaitement si j'ouvre une session (n'importe laquelle) et que je push l'installation du paquet, par contre si je n'ouvre pour la session ou j'arrête l'ordinateur (et donc lance la mise à jour avant de s'éteindre) cela ne fonctionne pas.Bonjour,J'ai créé un paquet officescan :
print('arret service')
run(r'"%s" -stop_csa'%uninstallexe1) ==> lance un exe fournis par officescan pour forcer l’arrêt du service (je ne peux arrête le service avec la commande "service_stop" car celui-ci est protégé pour évité l'arret justement).time.sleep(5)
print('Modification cle pour desinstallation')
registry_set(HKEY_LOCAL_MACHINE,'SOFTWARE\TrendMicro\PC-cillinNTCorp\CurrentVersion\Misc.','Allow uninstall',1) ==> permet une fois le service arrêté, d’autorisé la désinstallation du programme sans mot de passe (obligé pour désinstallation silencieuse)
print('desinstallation officescan 10.5')
run(r'"%s" /vs'%uninstallold) ==> désinstallation silencieuse
time.sleep(20)
print('installing enfa-officescan x86')
run(r'"agent_cloud_x86.msi" /q /norestart') ==> installation silencieuse
J'ai le message 'accès refusé' qui s'affiche dans la console, qui correspond à la commande registry_set(...) car il ne peux pas modifier le clé de registre tant que le service est lancé, et l'arret de celui-ci via la commande run(r'"%s" -stop_csa'%uninstallexe1) ne fonctionne pas quand la session est fermé.
Le service se nomme "TMBMServer", si je lance la commande :
if service_installed('TMBMServer'):
if service_is_running('TMBMServer'):
service_stop('TMBMServer')
j'ai le message d'erreur error: (1052, 'ControlService', "La commande demand\xe9e n'est pas valide pour ce service.") qui apparait car l'option "stop" est protégé.
Il y a peut être un autre moyen pour forcer l’arrêt? afin d'éviter d'utiliser leur programme exe qu'ils fournissent.
Je ne sais pas comment contourner le problème, a savoir comment forcer l'arret d'un service protégé ou trouvé une solution pour que mon paquet ne se lance qu'une fois qu'une session est ouverte (est ce possible?)
Merci de votre aide.
Cordialement,
--
_______________________________________________ WAPT mailing list WAPT@lists.tranquil.it http://lists.tranquil.it/listinfo/wapt
_______________________________________________
WAPT mailing list
WAPT@lists.tranquil.it
http://lists.tranquil.it/listinfo/wapt
--
_______________________________________________
WAPT mailing list
WAPT@lists.tranquil.it
http://lists.tranquil.it/listinfo/wapt