Focus sur une applic ?!

Signaler
Messages postés
68
Date d'inscription
samedi 5 mai 2001
Statut
Membre
Dernière intervention
15 mars 2015
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
Bonjour,


J'ai actuellement une fonction qui lance une macro dans un fichier excel à partir de mon site web.
Je voudrais maintenant, lorsque l'alerte d'application déjà lancée s'execute, que le focus revienne sur ma fenetre de macro.


Y a til une fonction spécifique en javascript pour rendre le focus à une appli ?


actuellement je fais 2 alt+tab avec un sendkeys, mais si le mec va sur un autre page entre temps, ça marche pas trop...


voici mon code actuel :


<SUP>Function outusine()
{
try
{
var fso=new ActiveXObject("Scripting.FileSystemObject");
fichier = fso.OpenTextFile("c:\\dej.dat", 1);
var deja = fichier.ReadLine();
fichier.Close();
}</SUP>


<SUP>catch(err)
{
deja="False";
}
if (deja=="False")
{
var ExcelApp = new ActiveXObject("Excel.Application");
ExcelApp.Application.Visible = false;
ExcelApp.Workbooks.Open("/site/rubriques/period/outperiod.xls");
ExcelApp.run("lancoutusine");
location.href='page1.html';
}
else
{
alert("Application déjà lancée!!");</SUP>



<SUP>w = new ActiveXObject("WScript.Shell");
//w.visible=false;
w.Sendkeys ("%{TAB}%{TAB}%{TAB}",1);
}
}</SUP>


Merci d'avance ;)

3 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
33
salut revolt,

pas trop compris ce que tu fais...
les alt+tab ne doivent être fait que lorsque
l'application est déjà lancée ?
( c'est ce qui est ici )

Cordialement. Bul. ~
Mon Site qu'il est à Moi ~

2 remarques :
<SUP>° fichier = fso.... c'est une variable globale qui, à priori,
serait mieux "en local" : var fichier=fso....
</SUP>° mettre un fichier sous la racine, "c'est pas beau"
<SUP>...OpenTextFile("c:\\dej.dat", 1);
à mettre dans "temporaires ?"
...OpenTextFile("%temp%/dej.dat", 1); ou pas loin !
</SUP><FO></S< body>
Messages postés
68
Date d'inscription
samedi 5 mai 2001
Statut
Membre
Dernière intervention
15 mars 2015

ah oué carrément.....

merci pr tes remarques ;)

Oui en fait je t'explique..... je suis sur mon site, je navigue, et j'ai des liens qui me lancent des fenetres VB (donc des macros).

Lorsqu'une personne clique sur un lien qu'il a déjà lancé, ça lui fait une erreur lui disant de d'abord fermer l'autre fenetre...
Alors là je veux que le focus se mette sur cette fenetre....
Pour ça, j'ai fait un sendkey, qui marche, mais si tu veux vu que ça envoie deux fois alt tab, c pas terrible, car il suffit qu'il ait activé une autre fenetre entre temps, pour que ça active une fenetre qui n'a rien a voir avec mon appli.....
Ce que j'ai oublié de te dire, c que mon applic est invisible dans la barre des taches, à cause de la propriété : <SUP>ExcelApp.Application.Visible = false;
</SUP>
Voilà....jspr que j'suis + clair

en tout cas merci bul ;)
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
33
je ne sais pas si je vais répondre, car toujours pas
très clair pour moi ( oui, je suis un peu beubeu )
si c'est une application qui pilote Excell, c'est sûrement un .HTA
( sinon, il vaudait mieux !!! ) et dans ce cas : dans la balise
<hta:Application... on peut mettre SingleInstance="no" ou "yes"
qui veut dire que ce programme peut être lancé plusieurs fois , ou pas
ça ne convient pas à ce qu'il faut faire ? le système s'occupe de tout !
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>