OVH Cloud OVH Cloud

Objet Wscript dans un fichier .hta

3 réponses
Avatar
toto
Bonjour,
Je n'arrive pas a utiliser les objets Wscript dans un
fichier .hta, cela me met comme erreur:

Une erreur est survenue sur le script de cette page.
Variable non definie: "wscript"

Pour une simple ligne de code comme:
wscript.echo "test"

Je suis sur XP SP2

Merci

3 réponses

Avatar
sympatix
Bonjour,
Salut !


Je n'arrive pas a utiliser les objets Wscript dans un fichier .hta.../...


C'est normal, l'objet Wscript est intrinsèque au moteur de script de windows
(WSH, càd Windows Script Host), et n'est pas accessible dans un contexte
HTA.
Pour "utiliser" un script vbs tournant sous WSH, dans un fichier HTA, tu
peux dans un premier temps supprimer tout ce qui fait référence à Wscript,
lors d'une instanciation un objet.

Exemple:
Set oFSO = wscript.CreateObject("Scripting.FileSystemObject")
devient
Set oFSO = CreateObject("Scripting.FileSystemObject")

Wscript.echo "bonjour"
devient
MsgBox "bonjour"

Ceci, pour t'indiquer grossièrement les différences les plus importantes
entre WSH et msHTA. Il y en a d'autres.

--
Cordialement
Sympatix
(Antispam: Ôter les "toto" dans l'adresse, pour me répondre)

Avatar
Merci pour vos reponse, mais j'aurai besoin d'avoir un
sleep dans mon programme, et je ne vois pas comment
l'utilisé sans mettre wscript.sleep
-----Message d'origine-----
Bonjour,
Salut !


Je n'arrive pas a utiliser les objets Wscript dans un
fichier .hta.../...



C'est normal, l'objet Wscript est intrinsèque au moteur
de script de windows

(WSH, càd Windows Script Host), et n'est pas accessible
dans un contexte

HTA.
Pour "utiliser" un script vbs tournant sous WSH, dans un
fichier HTA, tu

peux dans un premier temps supprimer tout ce qui fait
référence à Wscript,

lors d'une instanciation un objet.

Exemple:
Set oFSO = wscript.CreateObject
("Scripting.FileSystemObject")

devient
Set oFSO = CreateObject("Scripting.FileSystemObject")

Wscript.echo "bonjour"
devient
MsgBox "bonjour"

Ceci, pour t'indiquer grossièrement les différences les
plus importantes

entre WSH et msHTA. Il y en a d'autres.

--
Cordialement
Sympatix
(Antispam: Ôter les "toto" dans l'adresse, pour me
répondre)



.




Avatar
sympatix
Merci pour vos reponse,
De rien...

mais j'aurai besoin d'avoir un
sleep dans mon programme, et je ne vois pas comment
l'utilisé sans mettre wscript.sleep


Tu peux utiliser cette fonction (que m'avait donné Jean il y a quelque
temps) ou tu peux paramétrer une pause en millisecondes:
-----------------------------
<html>
hello
<script defer language=vbScript>
Msgbox "Bonjour"
Pause (2000)
Msgbox "Au revoir"
Sub Pause(msec)
showModalDialog _
"about:<script>setTimeout(""close()"","&_
msec&_
")<"&"/"&"script>"_
,"","dialogHeight:0px;dialogWidth:0px"
End Sub
</script>
</html>
-----------------------------------


--
Cordialement
Sympatix
(Antispam: Ôter les "toto" dans l'adresse, pour me répondre)
a écrit dans le message de news:
03b201c55f98$80dd1f50$
Merci pour vos reponse, mais j'aurai besoin d'avoir un
sleep dans mon programme, et je ne vois pas comment
l'utilisé sans mettre wscript.sleep
-----Message d'origine-----
Bonjour,
Salut !


Je n'arrive pas a utiliser les objets Wscript dans un
fichier .hta.../...



C'est normal, l'objet Wscript est intrinsèque au moteur
de script de windows

(WSH, càd Windows Script Host), et n'est pas accessible
dans un contexte

HTA.
Pour "utiliser" un script vbs tournant sous WSH, dans un
fichier HTA, tu

peux dans un premier temps supprimer tout ce qui fait
référence à Wscript,

lors d'une instanciation un objet.

Exemple:
Set oFSO = wscript.CreateObject
("Scripting.FileSystemObject")

devient
Set oFSO = CreateObject("Scripting.FileSystemObject")

Wscript.echo "bonjour"
devient
MsgBox "bonjour"

Ceci, pour t'indiquer grossièrement les différences les
plus importantes

entre WSH et msHTA. Il y en a d'autres.

--
Cordialement
Sympatix
(Antispam: Ôter les "toto" dans l'adresse, pour me
répondre)



.