Bonjour,
Voici mon problème. Je souhaiterais à partir d'une page web pouvoir gérer les fenêtres Windows ouvertes par l'utilisateur (ouvrir, fermer les fenêtres). Je souhaite donc passer par les fonctions EnumWindows, GetWindow et CloseWindow de la librairie USER32.DLL.
Evidemment cela n'est pas possible directement en Javascript car le navigateur n'a pas accès aux fonctions Windows de la librairie USER32.DLL. Je pense donc utiliser un Activex.
L'activex WScript.Shell permet de pouvoir utiliser la fonction RUN et lancer des fonctionnalités Windows.
Ainsi, par exemple le code suivant fonctionne à partir d'une page web (testé):
var WShell = new ActiveXObject("WScript.Shell" );
WShell.Run("rundll32.exe user32.dll,LockWorkStation" );
J'arrive donc à accéder à la procédure LockWorkStation de la librairie user32.
Par contre, pour utiliser des fonctions retournant des valeurs, tel que EnumWindows, là je bloque.
En effet, la ligne de code suivante
var = WShell.Run("rundll32.exe user32.dll,EnumWindows" );
ne retourne pas la valeur de la fonction EnumWindows contenue dans la librairie user32, mais retourne 0 ou 1 (la valeur du WShell.run!
Comment donc récupérer la valeur de la fonction EnumWindows afin de récupérer les handler (HWND) des fenêtres actives, pour pouvoir effectuer ensuite un CloseWindow sur une fenêtre spécifique?
En gros, j'aimerais faire la chose suivante à partir de Javascript:
var listeFenetres = monActiveX.listeDesFenetresWindows.
monActiveX.CloseWindow(listeFenetres[2]);
Merci d'avance pour toutes vos réponses!
Partager