Page 1 sur 1

Problème Creation Paquet Bitdefender Endpoint

Posté : 18 juin 2021 - 18:21
par remi
Bonjour a tous,

tout d'abord , étant tout nouveau, si je ne suis pas dans la bonne section ou s'il manque quoi que ce soit veuillez m'en excuser d'avance :D

Pour des tests en amont d'un déploiement pour une entreprise cliente, je suis en train de créer un paquet Bitdefender version Gravityzone .

Actuellement il est possible de lancer une installation en ligne de commande windows classique et une désinstallation à l'aide d'un setup récupéré sur le site de Bitdefender et à lancer également en ligne de commande.

ligne d'installation :

Code : Tout sélectionner

epskit_x64.exe /configure "installer.xml
ligne de desinstallation :

Code : Tout sélectionner

Best_uninstallTool.exe /bdparams /password=monpassword
Actuellement , j'ai réussi à faire fonctionner la partie def install() de mon setup.py , par contre la partie def uninstall() je sèche un peu sur la procédure.

Voici mon setyp.py :

Code : Tout sélectionner

# -*- coding: utf-8 -*-
from setuphelpers import *

uninstallkey = []

def install():

    if not installed_softwares(u'60c0cf4edc234a6808744eab'):
        print('BitDefender Gravity Zone : Installing...')

        run(u'epskit_x64.exe /configure "installer.xml',timeout=2000,accept_returncodes=[1641,3010,0])

        print('BitDefender Gravity Zone: Installation Complete')
    else:
        print('BitDefender Gravity Zone: Deja installe')

    if not isdir(makepath(programfiles,'Bitdefender','BitdefenderUninstall')):
        mkdirs(makepath(programfiles,'Bitdefender','BitdefenderUninstall'))
        filecopyto('BEST_uninstallTool.exe',makepath(programfiles,'Bitdefender','BitdefenderUninstall'))

def uninstall():

    print('Bitdender Gravity Zone : desinstallation en cours...')

    uninstallstring = ["C:\Program Files\Bitdefender\BitdefenderUninstall\Best_uninstallTool.exe"]

    x = "/bdparams"
    y = "/password=monpassword"

    run(uninstallstring,x,y,timeout=2000,accept_returncodes=[1641,3010,0])

    print('Nettoyage des fichiers de desinstallation.')
    remove_file(makepath(programfiles,'Bitdefender','BitdefenderUninstall','Best_uninstallTool.exe'))

    print('Suppression du dossier.')
    if dir_is_empty(makepath(programfiles,'Bitdefender','BitdefenderUninstall')):
        remove_tree(makepath(programfiles,'Bitdefender','BitdefenderUninstall'))

    print('Bitdefender Gravity Zone : Desinstallation complete')

Sur la partie désinstallation je ne sais pas très bien comment ajouter mes /params et /password à une commande de désinstallation est-ce que run peut le faire ou bien j'ai tout faux ;)

Merci par avance à toute la communauté.
Bonne soirée et bon week end :)
Rémi Lhommeau

Re: Problème Creation Paquet Bitdefender Endpoint

Posté : 21 juin 2021 - 15:48
par dcardon
Bonjour Remi,
uninstallstring = ["C:\Program Files\Bitdefender\BitdefenderUninstall\Best_uninstallTool.exe"]
les antislashs sont un caractère d'échapement en Python, il faut rajouter un r"" devant la string si l'on ne veut pas qu'il soit interprété.
Cordialement,
Denis

Re: Problème Creation Paquet Bitdefender Endpoint

Posté : 21 juin 2021 - 16:06
par remi
Bonjour Denis,

merci pour la précision.

Si je comprend bien la syntaxe de la commande devrait être la suivante :

Code : Tout sélectionner

uninstallstring = [r"C:\Program Files\Bitdefender\BitdefenderUninstall\Best_uninstallTool.exe"]
puis-je rajouter l'argument /bdparams et /password=monpassword tel que cela :

Code : Tout sélectionner

uninstallstring = [r"C:\Program Files\Bitdefender\BitdefenderUninstall\Best_uninstallTool.exe /bdparams /password=monpassword"]
ou ai-je besoin de la commande run par la suite pour intégrer ces deux arguements?

Bien Cordialement,
Rémi

Re: Problème Creation Paquet Bitdefender Endpoint

Posté : 24 juin 2021 - 11:48
par remi
Bonjour,

petite update :

j'ai réussi à lancer la commande de désinstallation grâce à la commande suivante :

Code : Tout sélectionner

def uninstall():

    print('Bitdender Gravity Zone : desinstallation en cours...')

    uninstallstring=r'"C:\Program Files\Bitdefender\BitdefenderUninstall\Best_uninstallTool.exe" "/bdparams" "/password=monpassword"'
    run(uninstallstring,timeout=2000,accept_returncodes=[1641,3010,0])

    print('Nettoyage des fichiers de desinstallation.')
    remove_file(makepath(programfiles,'Bitdefender','BitdefenderUninstall','Best_uninstallTool.exe'))

    print('Suppression du dossier.')
    if dir_is_empty(makepath(programfiles,'Bitdefender','BitdefenderUninstall')):
        remove_tree(makepath(programfiles,'Bitdefender','BitdefenderUninstall'))

    print('Bitdefender Gravity Zone : Desinstallation complete')

Petit souci par contre , la commande run ne se termine pas , et j’obtiens l'erreur :

Code : Tout sélectionner

2021-06-24 11:38:12,991 [waptcore       ] CRITICAL Fatal error in uninstall function: TimeoutExpired: Command '"C:\Program Files\Bitdefender\BitdefenderUninstall\Best_uninstallTool.exe" "/bdparams" "/password=monpassword"' timed out after 2000 seconds with output '''':
Traceback (most recent call last):
  File "C:\Program Files (x86)\wapt\waptpackage.py", line 2928, in call_setup_hook
    hookdata = hook_func()
  File "<string>", line 27, in uninstall
  File "C:\Program Files (x86)\wapt\common.py", line 3705, in run
    return ensure_unicode(setuphelpers.run(*arg, **args))
  File "C:\Program Files (x86)\wapt\setuphelpers_windows.py", line 4014, in run
    raise TimeoutExpired(cmd, ''.join(output), timeout)
waptutils.TimeoutExpired: Command '"C:\Program Files\Bitdefender\BitdefenderUninstall\Best_uninstallTool.exe" "/bdparams" "/password=monpassword"' timed out after 2000 seconds with output ''''
Pourquoi ne passe-t-il pas sur la suppression du dossier et fichier? J'ai lancé la commande en ligne de commande directement sur la machine et cela fonctionne bien.

sur le log de mon logiciel c'est pourtant ok :

Code : Tout sélectionner

2021-06-24 11:04:54.928 007524 [uninstalltoo] [   TRACE] [ryUt::TelemetryApp::AddUtVersion] -> UninstallTool::TelemetryUt::TelemetryApp::AddUtVersion()
2021-06-24 11:04:54.930 007524 [uninstalltoo] [   TRACE] [tryApp::GetProductVersionFromXml]     -> UninstallTool::TelemetryUt::TelemetryApp::GetProductVersionFromXml()
2021-06-24 11:04:54.930 007524 [uninstalltoo] [   TRACE] [tryApp::GetProductVersionFromXml]     <- UninstallTool::TelemetryUt::TelemetryApp::GetProductVersionFromXml() [0]
2021-06-24 11:04:54.930 007524 [uninstalltoo] [   TRACE] [ryUt::TelemetryApp::AddUtVersion] <- UninstallTool::TelemetryUt::TelemetryApp::AddUtVersion() [31]
2021-06-24 11:04:54.931 007524 [uninstalltoo] [   TRACE] [tryApp::AddTelemetryCommonFields] -> UninstallTool::TelemetryUt::TelemetryApp::AddTelemetryCommonFields()
2021-06-24 11:04:54.931 007524 [uninstalltoo] [   TRACE] [TelemetryApp::GetStrValueFromKey]     -> UninstallTool::TelemetryUt::TelemetryApp::GetStrValueFromKey()
2021-06-24 11:04:54.931 007524 [uninstalltoo] [   TRACE] [TelemetryApp::GetStrValueFromKey]     <- UninstallTool::TelemetryUt::TelemetryApp::GetStrValueFromKey() [0]
2021-06-24 11:04:54.931 007524 [uninstalltoo] [   TRACE] [tryApp::GetProductVersionFromXml]     -> UninstallTool::TelemetryUt::TelemetryApp::GetProductVersionFromXml()
2021-06-24 11:04:54.931 007524 [uninstalltoo] [   TRACE] [tryApp::GetProductVersionFromXml]     <- UninstallTool::TelemetryUt::TelemetryApp::GetProductVersionFromXml() [0]
2021-06-24 11:04:54.931 007524 [uninstalltoo] [   TRACE] [tryApp::GetVarsFromServConfigXml]     -> UninstallTool::TelemetryUt::TelemetryApp::GetVarsFromServConfigXml()
2021-06-24 11:04:54.933 007524 [uninstalltoo] [   TRACE] [tryApp::GetVarsFromServConfigXml]     <- UninstallTool::TelemetryUt::TelemetryApp::GetVarsFromServConfigXml() [0]
2021-06-24 11:04:54.933 007524 [uninstalltoo] [   TRACE] [TelemetryApp::GetStrValueFromKey]     -> UninstallTool::TelemetryUt::TelemetryApp::GetStrValueFromKey()
2021-06-24 11:04:54.933 007524 [uninstalltoo] [   TRACE] [TelemetryApp::GetStrValueFromKey]     <- UninstallTool::TelemetryUt::TelemetryApp::GetStrValueFromKey() [0]
2021-06-24 11:04:54.933 007524 [uninstalltoo] [   TRACE] [tryApp::AddTelemetryCommonFields] <- UninstallTool::TelemetryUt::TelemetryApp::AddTelemetryCommonFields() [0]
2021-06-24 11:04:54.933 007524 [uninstalltoo] [   TRACE] [ UninstallToolApp::GetVendorInfo] -> UninstallToolApp::GetVendorInfo()
2021-06-24 11:04:54.933 007524 [UninstallLib] [   TRACE] [      Uninstaller::GetVendorInfo]     -> Uninstaller::GetVendorInfo()
2021-06-24 11:04:54.942 007524 [UninstallLib] [   TRACE] [      Uninstaller::GetVendorInfo]     <- Uninstaller::GetVendorInfo() [0]
2021-06-24 11:04:54.942 007524 [uninstalltoo] [   TRACE] [ UninstallToolApp::GetVendorInfo] <- UninstallToolApp::GetVendorInfo() [0]
2021-06-24 11:04:54.942 007524 [uninstalltoo] [   TRACE] [etryUt::TelemetryApp::AddOptions] -> UninstallTool::TelemetryUt::TelemetryApp::AddOptions()
2021-06-24 11:04:54.943 007524 [uninstalltoo] [   TRACE] [etryUt::TelemetryApp::AddOptions] <- UninstallTool::TelemetryUt::TelemetryApp::AddOptions() [0]
2021-06-24 11:04:54.944 007524 [uninstalltoo] [    INFO] [  UninstallToolApp::ParseCmdLine] Parent process command line: C:\Program Files\Bitdefender\BitdefenderUninstall\Best_uninstallTool.exe /bdparams /password=monpassword 
2021-06-24 11:04:54.944 007524 [uninstalltoo] [   TRACE] [  UninstallToolApp::ParseCmdLine] -> UninstallToolApp::ParseCmdLine()
2021-06-24 11:04:54.944 007524 [uninstalltoo] [ WARNING] [  UninstallToolApp::ParseCmdLine]     user command line: "C:\Windows\TEMP\RarSFX5\uninstalltool.exe" 
2021-06-24 11:04:54.944 007524 [uninstalltoo] [    INFO] [  UninstallToolApp::ParseCmdLine]     command: bdparams forceall password 
2021-06-24 11:04:54.944 007524 [uninstalltoo] [   TRACE] [  UninstallToolApp::ParseCmdLine] <- UninstallToolApp::ParseCmdLine() [0]
2021-06-24 11:04:54.945 007524 [uninstalltoo] [   TRACE] [lToolApp::CallProductUninstaller] -> UninstallToolApp::CallProductUninstaller()
2021-06-24 11:04:54.945 007524 [uninstalltoo] [   TRACE] [ninstallToolApp::GetRegistryInfo]     -> UninstallToolApp::GetRegistryInfo()
2021-06-24 11:04:54.955 007524 [uninstalltoo] [   TRACE] [ninstallToolApp::GetRegistryInfo]     <- UninstallToolApp::GetRegistryInfo() [17]
2021-06-24 11:06:14.123 007524 [uninstalltoo] [    INFO] [lToolApp::CallProductUninstaller]     Uninstall finished successfully.
2021-06-24 11:06:14.124 007524 [uninstalltoo] [   TRACE] [lToolApp::CallProductUninstaller] <- UninstallToolApp::CallProductUninstaller() [79187]
2021-06-24 11:06:14.127 007524 [uninstalltoo] [   TRACE] [TelemetryApp::SendTelemetryEvent] -> UninstallTool::TelemetryUt::TelemetryApp::SendTelemetryEvent()
2021-06-24 11:06:14.127 007524 [uninstalltoo] [   TRACE] [TelemetryApp::SendTelemetryEvent]     Dumped telemetry event data: {"anon_id":"242D4D56-1F91-2586-FD78-3B77EC891074-000C29891074","bd_display_name":"Bitdefender Endpoint Security Tools","bd_locale":"fr-FR","bd_product_version":"7.1.2.33","event_name":"m_tool_ran","event_version":"1.0","exit_code":0,"exit_reason":"success","options":["password"],"sensor_class":"com.bitdefender.epswin","sensor_name":"com.bitdefender.epswin","tool":"uninstallTool","tool_version":"7.1.2.33"}

2021-06-24 11:06:14.230 007524 [uninstalltoo] [    INFO] [ls::ExtractEcReportInfoFromEvent]     Warning: event_time field not specified. Fallback to current time [value = 1624525574230]
2021-06-24 11:06:14.230 007524 [uninstalltoo] [   TRACE] [s::TranslateJsonValueToBdecEvent]     -> TelemetryUtils::TranslateJsonValueToBdecEvent()
2021-06-24 11:06:14.230 007524 [uninstalltoo] [    INFO] [cEventWrapper::~BdecEventWrapper]         GetEventTextA = 0
2021-06-24 11:06:14.231 007524 [uninstalltoo] [    INFO] [cEventWrapper::~BdecEventWrapper]         Event [text = {"anon_id": "no_anon_id_provided", "bd_display_name": "Bitdefender Endpoint Security Tools", "bd_locale": "fr-FR", "bd_product_version": "7.1.2.33", "bd_user_hashed": "UNKNOWN", "bdec_version": "3.0.21.191", "fingerprint": "no_fingerprint_provided", "machine_architecture": "x64", "os_build": "10.0.19043.1052", "os_edition": "Professional", "os_name": "Win 8", "os_product_name": "Windows 10 Enterprise", "os_product_type": "workstation", "os_release": "2009", "os_type": "Windows", "os_version": "10.0.19043", "sensor_name": "com.bitdefender.epswin", "temp_device_id": "UNKNOWN"}]
2021-06-24 11:06:14.231 007524 [uninstalltoo] [   TRACE] [s::TranslateJsonValueToBdecEvent]     <- TelemetryUtils::TranslateJsonValueToBdecEvent() [0]
2021-06-24 11:06:14.890 007524 [uninstalltoo] [    INFO] [cEventWrapper::~BdecEventWrapper]     GetEventTextA = 0
2021-06-24 11:06:14.890 007524 [uninstalltoo] [    INFO] [cEventWrapper::~BdecEventWrapper]     Event [text = {"anon_id": "242D4D56-1F91-2586-FD78-3B77EC891074-000C29891074", "bd_display_name": "Bitdefender Endpoint Security Tools", "bd_locale": "fr-FR", "bd_product_version": "7.1.2.33", "bd_user_hashed": "UNKNOWN", "bdec_version": "3.0.21.191", "event_name": "m_tool_ran", "event_time": 1624525574230, "event_version": "1.0", "exit_code": 0, "exit_reason": "success", "fingerprint": "no_fingerprint_provided", "machine_architecture": "x64", "options": ["password"], "os_build": "10.0.19043.1052", "os_edition": "Professional", "os_name": "Win 8", "os_product_name": "Windows 10 Enterprise", "os_product_type": "workstation", "os_release": "2009", "os_type": "Windows", "os_version": "10.0.19043", "sensor_class": "com.bitdefender.epswin", "sensor_name": "com.bitdefender.epswin", "temp_device_id": "UNKNOWN", "tool": "uninstallTool", "tool_version": "7.1.2.33"}]
2021-06-24 11:06:14.890 007524 [uninstalltoo] [    INFO] [TelemetryApp::SendTelemetryEvent]     TelemetryUtils::SendRawNotification returned: 0.
2021-06-24 11:06:14.890 007524 [uninstalltoo] [   TRACE] [TelemetryApp::SendTelemetryEvent] <- UninstallTool::TelemetryUt::TelemetryApp::SendTelemetryEvent() [766]

Bien Cordialement
Rémi

Re: Problème Creation Paquet Bitdefender Endpoint

Posté : 07 juil. 2021 - 17:29
par dcardon
see forum rules above.

Si il y a un timeout, c'est soit que le logiciel est très long à déinstaller (peut probableemnt), soit qu'il a fait une popup en attendant un résultat. Si le timeout arrive dans pyscripter, sans aucun message particulier, le mieux est de se rapprocher de l'éditeur. Si ça arrive en lançant à travers le service, il faut vérifer que ça fonctionne bien en compte Local System (voir les autres posts ou sur internet pour la méthode).

Cordialement,

Denis

Re: Problème Creation Paquet Bitdefender Endpoint

Posté : 21 sept. 2021 - 11:23
par Tim
Bonjour Rémi,

as-tu finalement résolu ton problème au niveau de la suppression?
je souhaite faire la même chose que toi et passer par un package wapt pour l'installation / désinstallation de bitdefender :D