Ouvrir une page htm dans un navigateur

Signaler
Messages postés
32
Date d'inscription
jeudi 7 décembre 2000
Statut
Membre
Dernière intervention
12 décembre 2008
-
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Bonjour,

je souhaite ouvrir un fichier htm dans un navigateur, le tout en vbscript.
Je fais d'abord un test de présence à l'aide de "fso.FileExists(fichier.htm)" et si le fichier existe, je voudrais l'ouvrir dans un navigateur.
J'ai d'abord essayé avec OpenTextFile mais ca ne marche pas (visiblement ca ne l'ouvre que "virtuellement" pour faire des modifs ou lire des données...).
J'ai vu sur ce forum que quelqu'un avait réussi avec le code suivant :
   Set wshshell = CreateObject("Wscript.Shell") 
   wshshell.Run """Chemin\fichier.htm"""
Mais je n'y arrive pas de mon côté...
Quelqu'un aurait une idée?

Merci d'avance pour vos réponses.
Cordialement,
Sebicool

9 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
42
s


alut,

sous forme de fonction, plus pratique ;)



Sub 
BrowseUrl(sUrl)

    Dim WshShell
    Set WshShell = CreateObject("Wscript.Shell")
    WshShell.Run "explorer.exe """ & sUrl & """"
    Set WshShell = Nothing
End Sub

'APPEL APRèS VéRIF
EXISTANCE
    BrowseUrl "C:\blabla\Chemin complet\fichier.htm"




++

<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
32
Date d'inscription
jeudi 7 décembre 2000
Statut
Membre
Dernière intervention
12 décembre 2008

Merci pour ta réponse PCPT...

Malheureusement, ca ne fonctionne pas. Ca ne fait qu'ouvrir une page blanche...
Je ne comprends pas pourquoi...

Une idée?
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
42
ton chemin en paramètre est sans doute incorrect ou incomplet
Messages postés
32
Date d'inscription
jeudi 7 décembre 2000
Statut
Membre
Dernière intervention
12 décembre 2008

Salut,

je suis désolé mais je ne pense pas que ca vienne de mon chemin... j'ai tout essayé, chemin relatif, chemin complet, avec des / ou des \, rien n'y fait...
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
42
tu as essayé à la racine, avec un HTM ou HTML, pour être certain?

code fait et colorisé en VB6 mais testé en VBS avec un fichier existant et valide, nom long avec espaces etc....

pour moi la seule cause est forcément le chemin....
à moins que ta page html ne soit blanche ^^

<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
32
Date d'inscription
jeudi 7 décembre 2000
Statut
Membre
Dernière intervention
12 décembre 2008

j'ai effectivement essayé à la racine, c'est un fichier HTM...
g mis un nom avec et sans espace...
ma page n'est pas blanche mais ca affiche une page blanche...
Je ne comprends vraiment pas pourquoi ca ne fonctionne pas.

Voila le code que j'utilise:

Sub  BrowseUrl(sUrl)
    Dim WshShell
    Set WshShell = CreateObject("Wscript.Shell")
    WshShell.Run "explorer.exe """ & sUrl & """"
    Set WshShell = Nothing
End Sub


'on teste la présence du fichier sur le serveur
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Dim chemin
chemin = "C:\mon_fichier.htm"
if (fso.FileExists(chemin) = true) then
  BrowseUrl chemin
else
  Response.Write("Le fichier que vous souhaitez consulter n'existe pas.")
end if

Help!!!!!!!!
Je pète un cable là...
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
42
chez moi çà provoque une erreur sur SERVER

si tu ne testes pas l'existance du fichier, donc uniquement mon code, çà donne quoi?

<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
32
Date d'inscription
jeudi 7 décembre 2000
Statut
Membre
Dernière intervention
12 décembre 2008

Ca ne marche pas non plus...
Je commence à desespérer là...

j'ai essayé complètement autre chose:
 if (fso.FileExists(chemin) = true) then
  Response.Write("<html><head><title>Statistiques</title><script Language='Javascript'>")
  Response.Write("window.open('C:/mon_fichier.htm','htm');")
  Response.Write("window.close();</script></head></html>")
 else
  Response.Write("Le fichier que vous souhaitez consulter n'existe pas.")
 end if

Ca marche quand j'essaye en local (sur le serveur où il y a le fichier) mais dès que j'essaye depuis un ordinateur distant, ca couille. Je me retrouve avec une erreur "accès refusé"...

Tu as une idée pourquoi ca me fait ca?
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
42
oh VBS en html....
pas en .VBS alors :)

VBS, comme javascript, est un langage "script" qui s'execute chez le client, pas côté serveur

l'ouverture d'une page distante appelant "c:\machin" appelle alors sur le C local, et non du serveur...

ton erreur est donc normale, ici pour que çà marche il faudrait que tu aies un fichier dans le C:\etc.... "client" (local, pas server) et que ton navigateur(client local) soit configuré pour l'execution de scripts.. frauduleux, et que la page distante soit dans les "sites de confiance"

<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp