Passer Variables entre HTA [Résolu]

David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 29 nov. 2006 à 10:47 - Dernière réponse : David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention
- 30 nov. 2006 à 10:43
Bonjour a tous,
J'aurais aimé faire passer un variables lors de l'ouverture d'un hta.
pour un html, il suffit de faire:
[doc.html?var=030
lien
]
puis de decortiquer l'url pour ratraper var=030

mais comment faire quand il s'agit de doc.hta?var=030

Merci d'avance
Afficher la suite 

Votre réponse

22 réponses

Meilleure réponse
David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 30 nov. 2006 à 09:18
3
Merci
Bon vu que je suis du genre tenace, j'ai fini par y arriver:
Ouverture d'un hta à partir d'un hta
+ passage de parametre
(P.S: ceci a été testé en local, il semblerait qu'il faut renommer le doc.hta en doc.HTAs (rescepter les majuscule/minuscule de l'extention) pour que ca fonctionne sur le web)

fichier Testindex.hta:
<HTML>
<HEAD>
<TITLE>Testindex</TITLE>
<HTA:APPLICATION ID "Testindex" APPLICATIONNAME "Testindex"
WINDOWSTATE "normal" MAXIMIZEBUTTON "yes" MINIMIZEBUTTON = "yes"
NAVIGABLE = "yes">
<script language="VBScript" type="text/Vbscript">
<!--pour un lien a partir d'un hta sans message d'erreur-->
Sub ouvrir(lien)
Set manipuleFichiers = CreateObject("WScript.shell")
manipuleFichiers.run(lien) 'On lance le HTA !
End Sub
</script>
<script type="text/javascript">
alert(Testindex.commandLine);
</script>
</HEAD>

[# lien]

</HTML>

et le fichier doc.hta:
<HTML>
<HEAD>
<TITLE>doc</TITLE>
<HTA:APPLICATION ID "doc" APPLICATIONNAME "doc" NAVIGABLE = "yes" >
</HEAD>


<script language="JavaScript" type="text/javascript">
<!--Recupere l'adresse URL-->
var URL=doc.commandLine;
alert("URL de la page:"+URL);

<!--Isoler les parametres-->
var ParamEntier=doc.commandLine.split("/?"); //Conserver la lettre du lecteur
alert("1er partie, avant le symbole /?:"+ParamEntier[0]);
alert("2eme partie, apres le symbole /?:"+ParamEntier[1]);

<!--dissocier chaque parametres-->
var Param=ParamEntier[1].split("&");

<!--Afficher les parametres recuperer-->
var NbsDeParam=Param.length; //connaitre la longueur du tableau.
alert("Il y a: "+NbsDeParam+" parametres");
document.write("
");
document.write("Bravo vous avez recuperer tous les parametres: ");
for(i=0;i<NbsDeParam;i++)
{
document.write("
");
document.write("parametre"+i+":");
document.write(Param[i]);
}

</script>

</HTML>

Voila A+

Merci David78390 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 95 internautes ce mois-ci

Commenter la réponse de David78390
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 29 nov. 2006 à 11:40
0
Merci
Bonjour,
   pareil qu'avec un .htm : window.location.search
<hr />
                                                Cordialement                         Bul      
Commenter la réponse de cs_bultez
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 29 nov. 2006 à 11:42
0
Merci
sinon, si c'est ce qui est donné sur la ligne de commande au lancement :

<HTA:APPLICATION ID="idHTA"...

 alert("ligne de commande :"+idHTA.commandLine);

<hr />
                                       Cordialement                Bul         
Commenter la réponse de cs_bultez
David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 29 nov. 2006 à 12:46
0
Merci
les 2 solution ne me renvoie rien????
Commenter la réponse de David78390
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 29 nov. 2006 à 13:00
0
Merci
moi si...
pour la 1ère, par exemple, essayer le "doc.hta" ci-dessous :

[doc.hta?var=030 lien]
<script type="text/javascript">
alert("***"+window.location.search);
</script>

au lancement affiche ***, au click sur le lien : ***?var=030

<hr />
                                                      Cordialement                   Bul         
Commenter la réponse de cs_bultez
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 29 nov. 2006 à 13:02
0
Merci
et toi, comment fais-tu ? il doit y avoir une erreur.
<hr />
                                       Cordialement             Bul      
Commenter la réponse de cs_bultez
David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 29 nov. 2006 à 14:00
0
Merci
j'ai esseye ton :
<script type="text/javascript">
alert("***"+window.location.search);
</script> DANS ma page appelée !!

Quand je lance href="doc.html?var=030", la page doc.html me donne bien ?var=030

Par contre qunad je lance href="doc.hta?var=030", la page doc.hta ne me donne rien.

Ce que je veut c'est recuperer mon parametre dans la page (qui est un hta)
qui s'ouvre.
Commenter la réponse de David78390
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 29 nov. 2006 à 14:34
0
Merci
je demandais d'essayer l'exemple dans "doc.hta" :  tu verras que ça fonctionne.
>>DANS ma page appelée
ça veut dire quoi ? encore une fois, donnes nous ce que tu fais : il  doit y avoir une erreur.
mais comme on ne dispose pas de tout......
<hr />
                                                      Cordialement             Bul       [
Commenter la réponse de cs_bultez
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 29 nov. 2006 à 14:40
0
Merci
je demandais d'essayer l'exemple dans "doc.hta" :  tu verras que ça fonctionne.
>>DANS ma page appelée
ça veut dire quoi ? encore une fois, donnes nous ce que tu fais : il  doit y avoir une erreur.
mais comme on ne dispose pas de tout......
<hr />
                                                      Cordialement             Bul       [
Commenter la réponse de cs_bultez
David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 29 nov. 2006 à 14:58
0
Merci
P.S:Dans ma page appelée=doc.hta

Quand je met ton script dans doc.hta, la page doc.hta ne me donne rien.
La fenetre d'alerte me marque *** c'est tout
Commenter la réponse de David78390
David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 29 nov. 2006 à 15:10
0
Merci
Voila mes 2 pages reduites:
Testindex.hta:
<HTML>
<HEAD>
<TITLE>Testindex</TITLE>
<HTA:APPLICATION
ID = "Testindex"
APPLICATIONNAME = "Testindex"
WINDOWSTATE = "normal"
MAXIMIZEBUTTON = "yes"
MINIMIZEBUTTON = "yes"
NAVIGABLE = "yes"
>

</HEAD>



Test du lien:
[doc.hta?var=030 lien]
<script type="text/javascript">
alert("ligne de commande :"+Testindex.commandLine);
alert("***"+window.location.search);
</script>


</HTML>


et le doc.hta:
<HTML>
<HEAD>
<TITLE>Affiche_doc en HTA</TITLE>
<HTA:APPLICATION ID "doc" APPLICATIONNAME "doc"
NAVIGABLE = "yes" >
</HEAD>


<script type="text/javascript">
alert("ligne de commande :"+doc.commandLine);
alert("***"+window.location.search);
</script>


</HTML>

je veut donc rechopper le var=030 dans la page doc.hta.
J'espere que c'est mieux comme ca ;-)
Commenter la réponse de David78390
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 29 nov. 2006 à 15:11
0
Merci
un fichier doc.hta avec ( et seulement  ça ) :

[doc.hta?var=030 lien]
<script type="text/javascript">
alert("***"+window.location.search);
</script>

lancement : affiche ***
click sur lien : affiche ***?var=030

windows XP , Internet Explorer 7.
tu me confirmes ? doc.hta tel quel, quelle version windows, IE ?
      debugger activé ? 

 aucune (?) raisons si avec doc.htm lien vers doc.htm ok !
c'est le cas ?

<hr />
                              Cordialement                Bul         
Commenter la réponse de cs_bultez
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 29 nov. 2006 à 15:23
0
Merci
alors "bien entendu", dans testindex.hta, les alert ne donnent rien.
si on clique sur le lien, doc.hta affiche bien ***?var=030
      rien pour commandLine "bien sûr".
<hr />
                                    Cordialement             Bul      
Commenter la réponse de cs_bultez
David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 29 nov. 2006 à 15:30
0
Merci
fichier doc.hta avec uniquement (pas de balise ni rien d'autre):
[doc.hta?var=030 lien]
<script type="text/javascript">
alert("***"+window.location.search);
</script>

lancement : affiche *** <--- ca je suis OK
click sur lien : affiche ***?var=030 <----NON ca m'ouvre une nouvelle fenetre doc.hta + le message ***, et rien d'autre

config:
--winXP
--IE version 6.00.2800.1106 (avec google bar + autorisation des popup)
--debugger Microsoft actif

Donc y'a un coui**e dans le potage??

Je fait l'essai sur un winXP+packSP2 IE version 6.00.2900.XXXX<---idem
Commenter la réponse de David78390
David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 29 nov. 2006 à 15:38
0
Merci
alors "bien entendu", dans testindex.hta, les alert ne donnent rien.<--au contraire:
alert("ligne de commande :"+Testindex.commandLine); me donne bien c:\chemin\Testindex.hta
et alert("***"+window.location.search); me donne que *** (logique)

si on clique sur le lien, doc.hta affiche bien ***?var=030 <--- et non ca affiche que ***
rien pour commandLine "bien sûr". <---Ca OK
Commenter la réponse de David78390
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 29 nov. 2006 à 15:44
0
Merci
alors... je ne sais pas.
moi : windows XP sp2, IE7 ( mais bon, IE et windows " antérieurs "
   ça devrait baigner, car mes notes datent un peu, et j'avais essayé ? )
   un paramétrage ? quelque part ? mais je ne vois ni où ni quoi.
<hr />
                              Cordialement                Bul         
Commenter la réponse de cs_bultez
David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 29 nov. 2006 à 15:57
0
Merci
Et zut...

Juste une remarque avec
fichier doc.hta avec uniquement (pas de balise ni rien d'autre):
[doc.hta?var=030 lien]
<script type="text/javascript">
alert("***"+window.location); <--j'ai volontairement enlevé le .search

Lors du clic sur le lien, la fenetre d'alerte sort ***file:///c:/chemin/doc.hta
La nouvelle page s'ouvre, et la barre de titre affiche c:\chemin\doc.hta mais le ?var=030 n'apparait pas<--c'est peut-etre la le probleme

qu'est ce que ca affiche chez toi dans la barre de titre??
Commenter la réponse de David78390
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 29 nov. 2006 à 16:11
0
Merci
   .location c'est l'url de la page, normal donc.

>>qu'est ce que ca affiche chez toi 
   la même chose...
   tu as essayé [doc.hta?var= 030" target="other">lien]
   sans target, avec plusieurs variables ?v1=1&v2=2.... ?
   difficile de voir de mon coté, puisque tout baigne.

<hr />
                                                   Cordialement                      Bul             [
Commenter la réponse de cs_bultez
David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 29 nov. 2006 à 16:38
0
Merci
Non, il veut rien savoir: il ne conseerve que la partie avant le ?,
le reste est perdu.

Moi y'en a pas comprendre????

>>qu'est ce que ca affiche chez toi
la même chose... <--- tu veut dire c:\chemin\doc.hta , ou c:\chemin\doc.hta?var=030 dans la barre des titre je parle (la ou il y a le title habituellement).
Commenter la réponse de David78390
David78390 197 Messages postés jeudi 27 avril 2006Date d'inscription 10 juillet 2011 Dernière intervention - 30 nov. 2006 à 09:35
0
Merci
le fichier tout zippé est ici:
http://www.javascriptfr.com/code.aspx?ID=40524
Commenter la réponse de David78390

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.