tis-dell-optimizer icon

Dell Optimizer

Silent install package for Dell Optimizer

4.1.353.0-7

  • package: tis-dell-optimizer
  • name: Dell Optimizer
  • version: 4.1.353.0-7
  • categories: Drivers
  • maintainer: WAPT Team,Tranquil IT,Clément Baziret,Jimmy PELÉ
  • editor: Dell
  • licence: proprietary_free,wapt_public
  • target_os: windows
  • impacted_process: DellOptimizer
  • architecture: x64
  • signature_date:
  • size: 665.67 Mo
  • installed_size: 57.46 Mo
  • homepage : https://www.dell.com/en-us/lp/dt/dell-optimizer
  • depends:

package           : tis-dell-optimizer
version           : 4.1.353.0-7
architecture      : x64
section           : base
priority          : optional
name              : Dell Optimizer
categories        : Drivers
maintainer        : WAPT Team,Tranquil IT,Clément Baziret,Jimmy PELÉ
description       : Dell Optimizer is a software application that intelligently and dynamically optimizes the performance of your computer by using artificial intelligence and machine learning
depends           : tis-dotnetfx,tis-dotnet6,tis-vcredist
conflicts         : 
maturity          : PROD
locale            : 
target_os         : windows
min_wapt_version  : 2.3
sources           : https://www.dell.com/support/home/drivers/DriversDetails?driverId=92TP7&ref=cpcl_optimizer-item0_cta_primaryeditoriallight_downloaddelloptimizersoftware
installed_size    : 57461286
impacted_process  : DellOptimizer
description_fr    : Dell Optimizer est une application logicielle qui optimise de manière intelligente et dynamique les performances de votre ordinateur en utilisant l'intelligence artificielle et l'apprentissage automatique
description_pl    : Dell Optimizer to aplikacja, która inteligentnie i dynamicznie optymalizuje wydajność komputera przy użyciu sztucznej inteligencji i uczenia maszynowego
description_de    : Dell Optimizer ist eine Softwareanwendung, die die Leistung Ihres Computers mit Hilfe von künstlicher Intelligenz und maschinellem Lernen intelligent und dynamisch optimiert
description_es    : Dell Optimizer es una aplicación de software que optimiza de forma inteligente y dinámica el rendimiento de su ordenador mediante el uso de inteligencia artificial y aprendizaje automático
description_pt    : O Dell Optimizer é uma aplicação de software que optimiza de forma inteligente e dinâmica o desempenho do seu computador, utilizando inteligência artificial e aprendizagem automática
description_it    : Dell Optimizer è un'applicazione software che ottimizza in modo intelligente e dinamico le prestazioni del computer utilizzando l'intelligenza artificiale e l'apprendimento automatico
description_nl    : Dell Optimizer is een softwaretoepassing die de prestaties van uw computer op intelligente en dynamische wijze optimaliseert met behulp van kunstmatige intelligentie en machine learning
description_ru    : Dell Optimizer - это программное приложение, которое интеллектуально и динамически оптимизирует производительность компьютера с помощью искусственного интеллекта и машинного обучения
audit_schedule    : 
editor            : Dell
keywords          : dell,optimizer,software,optimizes,performance,computer,artificial,intelligence,machine,learning
licence           : proprietary_free,wapt_public
homepage          : https://www.dell.com/en-us/lp/dt/dell-optimizer
package_uuid      : b4d11599-1deb-4cc2-82bf-7c783e927877
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 10.0
max_os_version    : 
icon_sha256sum    : c3eead5d74878ab08da49678d3107b75b45be525e613520d7f7af2a1abb5edfa
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature         : ivDM9r4LBMeAwa78vvanldoxthY0GUqUm79Cfgh1+EnrH/FDjzroRUpZSqvce2Trx781gbQNECr8g4ZDFJH9JkjTfFSrpcPKDGjsIpQNeZWlEOc/SLZvRXjmP9qzijSVw7RK79IC7nlJwhFMarDfPgectkQXlqddTi9ey9QpLXLPzHBPOFhoYuw5XOKXURm42BJewbFNxXAz5VwHiwQt+N28ZRWcxWLln5beIQkFG1eRwcH7kBlvpnBh6kv1jF1YRykMY6+Mk0StXFZnJP3MmJMkH3kp38skyPbkEd+zqeZVajv4U/WH9KPc91MlYL+meDq2dms9WIWwcTjrw/GYiA==
signature_date    : 2024-01-14T14:00:30.165011
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes

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

r""" Dell Optimizer Application, 4.0.310.0, A00

General Usage:
Dell-Optimizer-Application_92TP7_WIN_4.0.310.0_A00_01.exe [/<option1>[=<value1>]] [/<option2>[=<value2>]]...
See listing below for <option> and <value> information.

NOTE:If the folder name contains space, double quotes should be given for folder name
EXAMPLE:/s /e="c:\Folder Name"

Option - Description:
---------------------
(none) - Display of graphical user interface for guided installation/update or extraction.

/? or /h - Displays this  Update Package usage information.

/s - Suppresses all graphical user interfaces of the  Update Package.

/e=<path> - Extraction of update contents to a folder.
(NOTE: Requires /s option)

/passthrough ... - (Advanced) Sends all text following the /passthrough option directly to the vendor install software of the  Update Package. This mode suppresses any  provided graphical user interfaces, but not necessarily those of the vendor software.

/factoryinstall /passthrough (vendor command line parameter) - (Advanced) (commnad line parameters) will be passed to vendor installer directly without parsing MUP.xml. Post installation, If the vendor installer returns REBOOT_REQUIRED or REBOOT_UPDATE_PENDING, it will be turned to SUCCESS.

/l=<path> - Define a specific path for the  Update Package log file.
(NOTE: This option can NOT be used in combination with /passthrough)


Example(s):
---------------------
Update the system silently
Dell-Optimizer-Application_92TP7_WIN_4.0.310.0_A00_01.exe /s

Extract the update contents to the folder C:\mydir\
Dell-Optimizer-Application_92TP7_WIN_4.0.310.0_A00_01.exe /s /e=C:\mydir

Pass command line arguments directly to vendor installer.
Turn the return code to success if required
Dell-Optimizer-Application_92TP7_WIN_4.0.310.0_A00_01.exe /factoryinstall /passthrough D:\Sample.xml C:\log\FI.log


Change from the default log location to C:\my path with spaces\log.txt
Dell-Optimizer-Application_92TP7_WIN_4.0.310.0_A00_01.exe /l="C:\my path with spaces\log.txt" 


PS C:\waptdev\tis-dell-optimizer_0_PROD-wapt> wapt-get list-registry --json dell
{
 "output":[],
 "config_filename":"C:\\Program Files (x86)\\wapt\\wapt-get.ini",
"result":[
  {
   "key":"Dell Display Manager 2.0",
   "name":"Dell Display Manager 2.0",
   "version":"2.0.0.139",
   "install_date":"",
   "install_location":"",
   "uninstall_string":"C:\\Program Files\\Dell\\Dell Display Manager 2.0\\uninst.exe",
   "publisher":"Dell Inc.",
   "system_component":0,
   "win64":true
  },
  {
   "key":"Dell Peripheral Manager",
   "name":"Dell Peripheral Manager",
   "version":"1.6.5",
   "install_date":"",
   "install_location":"",
   "uninstall_string":"C:\\Program Files\\Dell\\Dell Peripheral Manager\\Uninstall.exe",
   "publisher":"Dell Inc.",
   "system_component":0,
   "win64":true
  },
  {
   "key":"{1344E072-D68B-48FF-BD2A-C1CCCC511A50}",
   "name":"Dell Optimizer",
   "version":"4.0.310.0",
   "install_date":"2023-07-31 00:00:00",
   "install_location":"C:\\Program Files\\Dell\\DellOptimizer\\",
   "uninstall_string":"MsiExec.exe /I{1344E072-D68B-48FF-BD2A-C1CCCC511A50}",
   "publisher":"Dell",
   "system_component":0,
   "win64":true
  },
  {
   "key":"{6250A087-31F9-47E2-A0EF-56ABF31B610E}",
   "name":"Dell Core Services",
   "version":"1.0.248.0",
   "install_date":"2023-07-31 00:00:00",
   "install_location":"C:\\Program Files\\Dell\\",
   "uninstall_string":"MsiExec.exe /I{6250A087-31F9-47E2-A0EF-56ABF31B610E}",
   "publisher":"Nom de votre soci\u00e9t\u00e9",
   "system_component":0,
   "win64":true
  },
  {
   "key":"{E27862BD-4371-4245-896A-7EBE989B6F7F}",
   "name":"DellOptimizerUI",
   "version":"4.0.310.0",
   "install_date":"2023-07-31 00:00:00",
   "install_location":"C:\\Program Files (x86)\\Dell\\DellOptimizer\\",
   "uninstall_string":"MsiExec.exe /I{E27862BD-4371-4245-896A-7EBE989B6F7F}",
   "publisher":"Dell",
   "system_component":0,
   "win64":true
  },
  {
   "key":"{286A9ADE-A581-43E8-AA85-6F5D58C7DC88}",
   "name":"Dell Optimizer Core",
   "version":"4.0.310.0",
   "install_date":"",
   "install_location":"",
   "uninstall_string":"\"C:\\Program Files (x86)\\InstallShield Installation Information\\{286A9ADE-A581-43E8-AA85-6F5D58C7DC88}\\DellOptimizer.exe\" -remove -runfromtemp",
   "publisher":"Dell Inc.",
   "system_component":0,
   "win64":false
  }
 ]
}

https://www.dell.com/support/kbdoc/en-us/000184087/installing-dell-optimizer-through-system-center-configuration-manager-sccm
https://www.manishbangia.com/deploy-and-install-dell-optimizer-using-sccm/
https://www.dell.com/support/manuals/fr-fr/dell-optimizer/dell-optimizer-4.0_ug/install-dell-optimizer-using-the-command-prompt?guid=guid-4f8d7f72-ce88-434f-9b37-5296167514d0&lang=en-us

7-31-2023[05:42:58]: (PowerShell Action): Exception occurred attempting to open script file 'C:\Users\sybe_t2\AppData\Local\Temp\{ECE1C88D-014F-4FDE-BA0B-97ED2A3FD05A}\StopTechHubService.ps1', error 'Le fichier 'C:\Users\sybe_t2\AppData\Local\Temp\{ECE1C88D-014F-4FDE-BA0B-97ED2A3FD05A}\StopTechHubService.ps1' est introuvable.'
7-31-2023[05:42:58]: Action returned value 0x80040716
7-31-2023[05:42:58]: Action 'StopTechHubService' returned status 0x80070643
7-31-2023[05:42:58]: Error code: 0x80070643
7-31-2023[05:42:58]: Original exit status: 0x80070643, final exit status: 0x00000643
7-31-2023[05:42:58]: State manager: removing staging files from: C:\Users\sybe_t2\AppData\Local\Temp\{ECE1C88D-014F-4FDE-BA0B-97ED2A3FD05A}\
7-31-2023[05:42:58]: State manager: removing state info

Analytics, Applications, Audio, Network, Power, Presence Detection, Collaboration, Dell Display Manager, Dell Peripheral Manager.
https://www.dell.com/support/manuals/fr-fr/dell-optimizer/dell-optimizer-4.0_ug/installation-modes?guid=guid-340f3508-cfc0-461c-8070-0b6d342b2d6b&lang=en-us

HeadlessMode == /ExcludeFeatures=Analytics,Audio,Collaboration,PresenceDetection
External Apps == /ExcludeFeatures=DellDisplayManager,DellPeripheralManager
/ExcludeFeatures=Analytics,Audio,Collaboration,PresenceDetection,DellDisplayManager,DellPeripheralManager
Dell Optimizer Core seems to invoke icacls cmd's

"""

log_path = r"C:\Windows\Temp\DellOptimizer_install.log"
# silentflags=rf'/s /l="{log_path}"',
silentflags = f'/silent /TelemetryConsent=false /InstallDotNet=false /HeadlessMode=true /debuglog"{log_path}"'
# silentflags=f'/silent /TelemetryConsent=false /InstallDotNet=false /ExcludeFeatures=Analytics,Audio,Collaboration,PresenceDetection,DellDisplayManager,DellPeripheralManager /debuglog"{log_path}"',


def install():
    bin_name = "DellOptimizer.exe"

    # Extracting installer
    run([glob.glob("Dell-Optimizer-Application_*.EXE")[0], "/s", "/e=."], timeout=600)

    # Installing software
    install_exe_if_needed(
        bin_name,
        silentflags=silentflags,
        key="{1344E072-D68B-48FF-BD2A-C1CCCC511A50}",
        min_version=control.get_software_version(),
        timeout=1200,
    )


def uninstall():
    if "HeadlessMode=true".lower() in silentflags.lower() or (
        "DellDisplayManager" in silentflags.lower() or "DellPeripheralManager" in silentflags.lower()
    ):
        # Uninstalling the software
        for to_uninstall in installed_softwares(uninstallkey="Dell Display Manager 2.0"):
            print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
            killalltasks(ensure_list(control.impacted_process))
            run(uninstall_cmd(to_uninstall["key"]))
            wait_uninstallkey_absent(to_uninstall["key"])

        # Uninstalling the software
        for to_uninstall in installed_softwares(uninstallkey="Dell Peripheral Manager"):
            print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
            killalltasks(ensure_list(control.impacted_process))
            run(uninstall_cmd(to_uninstall["key"]))
            wait_uninstallkey_absent(to_uninstall["key"])

    # Uninstalling the software with different uninstall_string
    for to_uninstall in installed_softwares(uninstallkey="{286A9ADE-A581-43E8-AA85-6F5D58C7DC88}"):  # Dell Optimizer Core
        print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
        killalltasks(ensure_list(control.impacted_process))
        app_uninstall_cmd = uninstall_cmd(to_uninstall["key"])
        app_uninstall_cmd.append("-silent")
        run(app_uninstall_cmd)
        wait_uninstallkey_absent(to_uninstall["key"])

    # Uninstalling the software
    for to_uninstall in installed_softwares(uninstallkey="{6250A087-31F9-47E2-A0EF-56ABF31B610E}"):  # Dell Core Services
        print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
        killalltasks(ensure_list(control.impacted_process))
        run(uninstall_cmd(to_uninstall["key"]))
        wait_uninstallkey_absent(to_uninstall["key"])

    # Uninstalling the software
    for to_uninstall in installed_softwares(uninstallkey="{E27862BD-4371-4245-896A-7EBE989B6F7F}"):  # DellOptimizerUI
        print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
        killalltasks(ensure_list(control.impacted_process))
        run(uninstall_cmd(to_uninstall["key"]))
        wait_uninstallkey_absent(to_uninstall["key"])

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

bin_name = "DellOptimizer.exe"


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    url = "https://www.dell.com/en-us/lp/dell-optimizer"

    print("URL used is: %s" % url)
    # Getting the download page link
    download_page_url = bs_find(url, "a", attribute="aria-label", value="Download Dell Optimizer Software", proxies=proxies)["href"]

    # Getting latest version from official sources
    print("Download page URL is: %s" % download_page_url)
    for bs_search in bs_find_all(
        download_page_url,
        "a",
        attribute="class",
        value="text-decoration-none pointer-cursor dellmetrics-driverdownloads btn btn-primary mt-2",
        proxies=proxies,
    ):
        if ".exe" in bs_search["href"].lower():
            latest_bin = bs_search["href"].split("/")[-1]
            version = latest_bin.split("_")[3]
            download_url = bs_search["href"]
            break

    # Downloading latest binaries
    print("Latest %s version is: %s" % (control.name, version))
    print("Download URL is: %s" % download_url)
    if not isfile(latest_bin):
        print("Downloading: %s" % latest_bin)
        wget(download_url, latest_bin, proxies=proxies)
    else:
        print("Binary is present: %s" % latest_bin)

    # Checking version from file
    version_from_file = get_version_from_binary(latest_bin)
    if Version(version_from_file, 4) != Version(version, 4) and version_from_file != "":
        print("Changing version to the version number of the binary (from: %s to: %s)" % (version, version_from_file))
        # os.rename(latest_bin, latest_bin.replace(version, version_from_file))
        version = version_from_file
    else:
        print("Binary file version corresponds to online version")

    # Changing version of the package
    if Version(version, 4) > Version(control.get_software_version(), 4):
        print("Software version updated (from: %s to: %s)" % (control.get_software_version(), Version(version)))
        package_updated = True
    else:
        print("Software version up-to-date (%s)" % Version(version))
    control.set_software_version(version)
    control.save_control_to_wapt()

    # Validating or not update-package-sources
    return package_updated

    # # Changing version of the package and validating update-package-sources
    # return complete_control_version(control, version)

66d07b57465cd46e21405ca80dc803ed4be9f546398394a24d2a2e91b136a9bb : Dell-Optimizer-Application_H7VM5_WIN_4.1.353.0_A00.EXE
7872d499005b0a87276778cd0e2f35122df2018c64c06d928634a047e7ed7272 : setup.py
95133b20f8e19cb41450ef778dfe0010b3ea0232574aadf0078a24958a1cfdfb : update_package.py
c3eead5d74878ab08da49678d3107b75b45be525e613520d7f7af2a1abb5edfa : WAPT/icon.png
a5a97261381e1d0ad46ee15916abec9c2631d0201f5cc50ceb0197a165a0bbbf : WAPT/certificate.crt
ce12d6f7c1a4901563a9ec35376214bf7271296053c6145ea2d731b8a4993824 : luti.json
f94f0bf0552c7c1e805e030e06f7b139e158ea8429fc8c066e5c8a1b593627ac : WAPT/control