tis-eshare

7.5.723-1
EShare est une application d'interaction multi-écrans qui rend l'expérience de l'utilisateur naturelle et agréable pour le divertissement à domicile, les présentations professionnelles et la formation
339 téléchargements
Télécharger
Voir le résultat de la construction Voir l'analyse de VirusTotal
tis-eshare icon
  • package : tis-eshare
  • name : EShare
  • version : 7.5.723-1
  • categories :
  • maintainer : WAPT Team,Tranquil IT,Amel FRADJ
  • editor :
  • licence : https://eshare.app/eula/EShareEULA.html
  • locale :
  • target_os : windows
  • impacted_process :
  • architecture : x64
  • signature_date : 2024-08-25 10:05
  • size : 25.29 Mo
  • homepage : https://eshare.app/
package           : tis-eshare
version           : 7.5.723-1
architecture      : x64
section           : base
priority          : optional
name              : EShare
categories        : 
maintainer        : WAPT Team,Tranquil IT,Amel FRADJ
description       : EShare is a multi-screen interaction application that makes the user experience natural and enjoyable for home entertainment, business presentation, and educational training
depends           : 
conflicts         : 
maturity          : PROD
locale            : 
target_os         : windows
min_wapt_version  : 
sources           : 
installed_size    : 
impacted_process  : 
description_fr    : EShare est une application d'interaction multi-écrans qui rend l'expérience de l'utilisateur naturelle et agréable pour le divertissement à domicile, les présentations professionnelles et la formation
description_pl    : EShare to aplikacja do interakcji na wielu ekranach, która sprawia, że doświadczenie użytkownika jest naturalne i przyjemne dla domowej rozrywki, prezentacji biznesowych i szkoleń edukacyjnych
description_de    : EShare ist eine Anwendung für die Interaktion auf mehreren Bildschirmen, die ein natürliches und angenehmes Benutzererlebnis für Home Entertainment, Geschäftspräsentationen und Schulungen bietet
description_es    : EShare es una aplicación de interacción multipantalla que hace que la experiencia del usuario sea natural y agradable para el entretenimiento doméstico, la presentación empresarial y la formación educativa
description_pt    : EShare é uma aplicação de interação multi-ecrã que torna a experiência do utilizador natural e agradável para entretenimento doméstico, apresentação de negócios e formação educacional
description_it    : EShare è un'applicazione di interazione multischermo che rende l'esperienza dell'utente naturale e piacevole per l'intrattenimento domestico, le presentazioni aziendali e la formazione didattica
description_nl    : EShare is een toepassing voor interactie op meerdere schermen die de gebruikerservaring natuurlijk en aangenaam maakt voor thuisentertainment, bedrijfspresentaties en educatieve training
description_ru    : EShare - это приложение для взаимодействия с несколькими экранами, которое делает пользовательский опыт естественным и приятным для домашних развлечений, бизнес-презентаций и образовательных тренингов
audit_schedule    : 
editor            : 
keywords          : 
licence           : https://eshare.app/eula/EShareEULA.html
homepage          : https://eshare.app/
package_uuid      : 79684c13-650d-49eb-be1e-67ebf2bad32e
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : a9370667822d29b3ca5276bf85600b8aa0651ae8c904f87ed282a134f8dcc5b6
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature         : ga5l01fCYwmPwUNprhzCGEWJm0WiFJ4hm3qB0a3YWa45uz4ccfAvHJKB6Psh6jjGHvc0KoX0rY6lZm3MfxSJHK/ORPCpmkUgLKsakXiRd2jcxk67S4UWUKG1Q0D790T1NQwWPP1pk2tD2o2vs+5fqOgHYdrJuVLwG3mY8TuigykTE+B79XG3QpkPXu+Kj5NZfoPpAgrJg1QXR3IUMCAe2gp77HPCtci+nHmgVBX3Gs1QZAzt1Bn0LSgG3TgMfOhA0VX1ao/mdcgsltv0mNRmg9UdrVYUE+SiYEn9WOaofPT/oc9dStVxhwZdfThweXhsR6HnJLl5pimdm9xtSIaWaQ==
signature_date    : 2024-08-25T10:05:52.009996
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 *
import time

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()

"""

def install():

    # Uninstalling older versions of the software
    for to_uninstall in installed_softwares(name="EShare"):
        if Version(to_uninstall["version"]) < Version(control.get_software_version()):
            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"])
            if isdir(to_uninstall["install_location"]):
                remove_tree(to_uninstall["install_location"])
    # Cherche le fichier MSI correspondant
    msi_files = glob.glob('EShareClient_*.msi')
    
    if not msi_files:
        raise Exception("Fichier MSI non trouvé. Veuillez vérifier que le fichier 'EShareClient_*.msi' est présent dans le dossier.")

    bin_name = msi_files[0]

    # Installer le package MSI
    install_msi_if_needed(bin_name)

def uninstall():
    # Liste des exécutables de désinstallation avec leurs arguments silencieux
    uninstallers = [
        (r'C:\Program Files (x86)\EShare Audio\uninst.exe', '/S'),
        (r'C:\Program Files (x86)\EShare Camera\uninst.exe', '/S'),
        (r'C:\Program Files (x86)\ESystemRemoteService\uninst.exe', '/S'),
        (r'MsiExec.exe', '/X{17BEDB35-68B7-412C-9536-00973562B77A}', '/qn')
    ]
    
    # Désinstaller chaque composant
    for uninstaller in uninstallers:
        command = f'"{uninstaller[0]}" {" ".join(uninstaller[1:])}'
        
        if os.path.exists(uninstaller[0]) or "MsiExec.exe" in uninstaller[0]:
            print(f"Exécution de la désinstallation : {command}")
            try:
                run(command, accept_returncodes=[0, 3010])
                # Attendre un moment pour s'assurer que la désinstallation est terminée
                time.sleep(10)  # Augmenté le temps d'attente pour permettre aux désinstallateurs de terminer
            except Exception as e:
                print(f"Erreur lors de l'exécution de la commande : {e}")
        else:
            print(f"Chemin non trouvé pour la désinstallation : {uninstaller[0]}")

    # Vérifier si les répertoires existent encore et les supprimer si nécessaire
    remove_tree(r'C:\Program Files (x86)\EShare Audio', ignore_errors=True)
    remove_tree(r'C:\Program Files (x86)\EShare Camera', ignore_errors=True)
    remove_tree(r'C:\Program Files (x86)\ESystemRemoteService', ignore_errors=True)

    # Supprimer les entrées de registre résiduelles, le cas échéant
    try:
        reg_delete_key(HKEY_LOCAL_MACHINE, r'SOFTWARE\EShare Audio')
        reg_delete_key(HKEY_LOCAL_MACHINE, r'SOFTWARE\EShare Camera')
        reg_delete_key(HKEY_LOCAL_MACHINE, r'SOFTWARE\ESystemRemoteService')
    except Exception as e:
        print(f"Erreur lors de la suppression des clés de registre : {e}")
    

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




def update_package():
    # Declaring local variables
    package_updated = False
    
    proxies = get_proxies_from_wapt_console()
    if not proxies:
        proxies = get_proxies()

  
    url_base = "https://eshare.app/"
    response = requests.get(url_base,allow_redirects=True, proxies=proxies)
    # Extract the correct div using bs_find_all
    divs = bs_find_all(response.text, "div","class","download-item", proxies=proxies)
    msi_file = None
    for div in divs:
        if msi_file:
            break
        links = div.find_all('a', href=True)
        for link in links:
            if link['href'].endswith('/msi'):
                href = link['href']
                msi_file = href
                download_url = requests.head(msi_file,allow_redirects=True, proxies=proxies).url
                latest_bin = download_url.split('/')[-1]
                version = latest_bin.split('_')[-1].replace('.msi','').replace('v','')
                break


    # Downloading latest binaries
    print("Download URL is: %s" % download_url)
    if not isfile(latest_bin):
        print("Downloading: %s" % latest_bin)
        wget(download_url, latest_bin, proxies=proxies)
        package_updated = True
    else:
        print("Binary is present: %s" % latest_bin)


    # Deleting outdated binaries
    for f in glob.glob('*.msi'):
        if f != latest_bin:
            remove_file(f)

         
    version = get_version_from_binary(latest_bin)
    # Mettre à jour le package
    control.set_software_version(version)
    control.save_control_to_wapt()    
        

fc92c66c2f554a91803233eab9d5870e950b8fb45e6f25f25a65f117d646c99d : setup.py
 : __pycache__
1cad59b4130fb9d77184e398f80962c0cb4d7a223fb71cd368e3a47f4e1dacb2 : update_package.py
a9370667822d29b3ca5276bf85600b8aa0651ae8c904f87ed282a134f8dcc5b6 : WAPT/icon.png
a5a97261381e1d0ad46ee15916abec9c2631d0201f5cc50ceb0197a165a0bbbf : WAPT/certificate.crt
0ca885b2a7f72bdf30e27b1a0d51f0bebd994d3035e015aefe35bed5344c3299 : luti.json
b325a928955653cb19bd69b78b033d5f8437f263545b7bc50ddf58f8e9695a72 : EShareClient_v7.5.723.msi
5be28cc9224150afe019b7efad4790564c089d9db6d101a2fb9c0aa2232a0d2d : WAPT/control