Dual Monitor Tools
Paquet d'installation silencieuse pour Dual Monitor Tools
2.13-1
System and network
System and network
Les paquets PREPROD sont des paquets construits via LUTI.
Ils restent généralement 5 jours en PREPROD, après quoi un deuxième scan VirusTotal est effectué pour vérifier que le status n'a pas changé.
Si le paquet réussit ce dernier contrôle, il est promu en PROD et publié sur le store.
- package: tis-dual-monitor-tools
- name: Dual Monitor Tools
- version: 2.13-1
- categories: System and network
- maintainer: WAPT Team,Tranquil IT,
- licence: opensource_free,wapt_public
- target_os: windows
- architecture: all
- signature_date:
- size: 753.78 Ko
- homepage : https://sourceforge.net/projects/dualmonitortool/files/dualmonitortool/
package : tis-dual-monitor-tools
version : 2.13-1
architecture : all
section : base
priority : optional
name : Dual Monitor Tools
categories : System and network
maintainer : WAPT Team,Tranquil IT,
description : Tools for Windows users with two or more monitors. Includes keyboard shortcuts for moving windows, restricting mouse/cursor movement between screens, an application launcher, a wallpaper creator and changer, and a screen capture tool
depends :
conflicts :
maturity : PREPROD
locale :
target_os : windows
min_wapt_version : 2.3
sources :
installed_size :
impacted_process :
description_fr : Outils pour les utilisateurs Windows avec deux ou plusieurs moniteurs. Comprend des raccourcis clavier pour déplacer les fenêtres, restreindre le mouvement de la souris/du curseur entre les écrans, un lanceur d'applications, un créateur et un changeur de fond d'écran et un outil de capture d'écran
description_pl : Narzędzia dla użytkowników systemu Windows z dwoma lub więcej monitorami. Zawiera skróty klawiaturowe do przenoszenia okien, ograniczania ruchu myszy/kursora między ekranami, uruchamiania aplikacji, tworzenia i zmiany tapet oraz narzędzie do przechwytywania ekranu
description_de : Tools für Windows-Benutzer mit zwei oder mehr Monitoren. Enthält Tastenkombinationen zum Verschieben von Fenstern, zum Einschränken der Maus-/Cursorbewegung zwischen den Bildschirmen, einen Anwendungsstarter, einen Hintergrundbild-Ersteller und -Wechsler sowie ein Screenshot-Tool
description_es : Herramientas para usuarios de Windows con dos o más monitores. Incluye atajos de teclado para mover ventanas, restringir el movimiento del ratón/cursor entre pantallas, un lanzador de aplicaciones, un creador y cambiador de fondos de escritorio y una herramienta de captura de pantalla
description_pt : Ferramentas para utilizadores do Windows com dois ou mais monitores. Inclui atalhos de teclado para mover janelas, restringir o movimento do rato/cursor entre ecrãs, um lançador de aplicações, um criador e alterador de papel de parede e uma ferramenta de captura de ecrã
description_it : Strumenti per utenti Windows con due o più monitor. Include scorciatoie da tastiera per spostare le finestre, limitare il movimento del mouse/cursore tra gli schermi, un lanciatore di applicazioni, un creatore e modificatore di sfondi e uno strumento di cattura dello schermo
description_nl : Hulpmiddelen voor Windows-gebruikers met twee of meer monitoren. Bevat sneltoetsen voor het verplaatsen van vensters, het beperken van muis/cursorbewegingen tussen schermen, een applicatie launcher, een wallpaper maker en wisselaar, en een screen capture tool
description_ru : Инструмент для пользователей Windows с двумя и более мониторами. Включает сочетания клавиш для перемещения окон, ограничения перемещения мыши/курсора между экранами, программу запуска приложений, программу создания и смены обоев, а также инструмент для захвата экрана
audit_schedule :
editor :
keywords :
licence : opensource_free,wapt_public
homepage : https://sourceforge.net/projects/dualmonitortool/files/dualmonitortool/
package_uuid : e5b0a594-da6d-4e49-a16a-dd1d30342675
valid_from :
valid_until :
forced_install_on :
changelog :
min_os_version :
max_os_version :
icon_sha256sum : 2aa85f123ae73bebbe745929bc9841ba20b525a8835ce874672aee61efdda09a
signer : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date : 2026-09-21T09:36:18.000000
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
signature : hR6hJWfqwhuwlNX84Dkz9PI/+nmquVya0U2VypEF41tvgM7dKKI2lvDVFnimuP2cxX1R9JaTfxJvZBo+DdTZeF6vqOI3Vxhxm67g4jzJOki35haYkuO4cSNsjdf5Qv/EDza9OO9ssgNAvdCWqjxVkMEAXv+9P8K3+gMC6/L/aQ9JM60KR8Afe8j03hjMDcCQb3znwkyUxrgIuNtxu0ZQr6mdQ6U3yibSMUE7h30KDscWiQKO61reH2A8QNk1olpbouQKuyHawLEuMOGKGM1F3PuvyLv+dyNG4StA90msl2fR2KS9cY2nRJ6JtTccCZ45Nb9uIHvttRbP/PF8SdzF2A==
# -*- coding: utf-8 -*-
from setuphelpers import *
r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()
"""
# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
def install():
# Declaring local variables
bin_name = glob.glob('DualMonitorTools-*.msi')[0]
# Installing the software
install_msi_if_needed(bin_name)
# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *
import requests
def update_package():
# Déclaration des variables locales
package_updated = False
proxies = get_proxies_from_wapt_console()
if not proxies:
proxies = get_proxies()
arch_dict = {
"windows":".msi",
}
url = "https://sourceforge.net/projects/dualmonitortool/files/dualmonitortool/"
response = requests.get(url)
headers = bs_find_all(url,"th","headers")
if headers:
first_header = headers[0]
a_tag = first_header.find("a")
if a_tag:
first_link = a_tag['href']
version = first_link.split('/')[-2]
print(f"First version found: {version}")
# Trouver tous les éléments <tr> avec la classe file et le titre correspondant à la version
requet = requests.get(url + version).text
rows = bs_find_all(requet, "tr", class_name="file")
target_title = f"DualMonitorTools-{version}{arch_dict[control.target_os]}"
download_link = None
for row in rows:
if row.get('title') == target_title:
a_tag = row.find("a", title=f"Click to download {target_title}")
if a_tag:
download_link = a_tag['href']
break
if download_link:
print(f"Download link found: {download_link}")
latest_bin = target_title
download_url = download_link
# 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)
else:
print("Binary is present: %s" % latest_bin)
# 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 update-package-sources
return package_updated
# # Changing version of the package and validating update-package-sources
# return complete_control_version(control, version)
7a68c711bf427ad9e7c92f7c277359612df596ddef90585ce5b08353ff303254 : DualMonitorTools-2.13.msi
01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
1134c9119fea9dcf895fdc234372ccc25cdb4bd271499d3cf1eeb23940162f12 : WAPT/control
2aa85f123ae73bebbe745929bc9841ba20b525a8835ce874672aee61efdda09a : WAPT/icon.png
9a40e8b876ebaff19f5fd6d1987a75ba516314aec677e63857f2be5fed66a60e : luti.json
d5b91636cc44dbff496577dad93e287501bbc1f23759d87959b76a524346aae1 : setup.py
6b715e7f3cbb9a5d8816fb9eaac1cc081d1f4c1c44c80649904abe12c0797df8 : update_package.py