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 :

uploader un fichier par FTP en DOS via un Proxy


Sujet :

VBScript

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

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 840
    Points : 9 225
    Points
    9 225
    Par défaut uploader un fichier par FTP en DOS via un Proxy
    Bonjour,
    J'ai utilisé le programme ftp de DOS de Windows pour envoyer un fichier chaque jour avec Vbscript. Nous venons d'ajouter un serveur SQUID proxy dans notre réseau avec un Login et un Mot de passe utilisant le port 3128.
    Ma question est la suivante: comment faire pour modifier cette Fonction Ftpupload pour résoudre ce probléme de Proxy?
    Merci d'avance!
    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
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    Function FTPUpload(sSite, sUsername, sPassword, sLocalFile, sRemotePath)
      'This script is provided under the Creative Commons license located
      'at http://creativecommons.org/licenses/by-nc/2.5/ . It may not
      'be used for commercial purposes with out the expressed written consent
      'of NateRice.com
     
      Const OpenAsDefault = -2
      Const FailIfNotExist = 0
      Const ForReading = 1
      Const ForWriting = 2
     
      Set oFTPScriptFSO = CreateObject("Scripting.FileSystemObject")
      Set oFTPScriptShell = CreateObject("WScript.Shell")
     
      sRemotePath = Trim(sRemotePath)
      sLocalFile = Trim(sLocalFile)
     
      '----------Path Checks---------
      'Here we willcheck the path, if it contains
      'spaces then we need to add quotes to ensure
      'it parses correctly.
      If InStr(sRemotePath, " ") > 0 Then
        If Left(sRemotePath, 1) <> """" And Right(sRemotePath, 1) <> """" Then
          sRemotePath = """" & sRemotePath & """"
        End If
      End If
     
      If InStr(sLocalFile, " ") > 0 Then
        If Left(sLocalFile, 1) <> """" And Right(sLocalFile, 1) <> """" Then
          sLocalFile = """" & sLocalFile & """"
        End If
      End If
     
      'Check to ensure that a remote path was
      'passed. If it's blank then pass a "\"
      If Len(sRemotePath) = 0 Then
        'Please note that no premptive checking of the
        'remote path is done. If it does not exist for some
        'reason. Unexpected results may occur.
        sRemotePath = "\"
      End If
     
      'Check the local path and file to ensure
      'that either the a file that exists was
      'passed or a wildcard was passed.
      If InStr(sLocalFile, "*") Then
        If InStr(sLocalFile, " ") Then
          FTPUpload = "Error: Wildcard uploads do not work if the path contains a " & _
          "space." & vbCRLF
          FTPUpload = FTPUpload & "This is a limitation of the Microsoft FTP client."
          Exit Function
        End If
      ElseIf Len(sLocalFile) = 0 Or Not oFTPScriptFSO.FileExists(sLocalFile) Then
        'nothing to upload
        FTPUpload = "Error: File Not Found."
        Exit Function
      End If
      '--------END Path Checks---------
     
      'build input file for ftp command
      sFTPScript = sFTPScript & "USER " & sUsername & vbCRLF
      sFTPScript = sFTPScript & sPassword & vbCRLF
      sFTPScript = sFTPScript & "cd " & sRemotePath & vbCRLF
      sFTPScript = sFTPScript & "binary" & vbCRLF
      sFTPScript = sFTPScript & "prompt n" & vbCRLF
      sFTPScript = sFTPScript & "put " & sLocalFile & vbCRLF
      sFTPScript = sFTPScript & "quit" & vbCRLF & "quit" & vbCRLF & "quit" & vbCRLF
     
     
      sFTPTemp = oFTPScriptShell.ExpandEnvironmentStrings("%TEMP%")
      sFTPTempFile = sFTPTemp & "\" & oFTPScriptFSO.GetTempName
      sFTPResults = sFTPTemp & "\" & oFTPScriptFSO.GetTempName
     
      'Write the input file for the ftp command
      'to a temporary file.
      Set fFTPScript = oFTPScriptFSO.CreateTextFile(sFTPTempFile, True)
      fFTPScript.WriteLine(sFTPScript)
      fFTPScript.Close
      Set fFTPScript = Nothing
     
      oFTPScriptShell.Run "%comspec% /c FTP -n -s:" & sFTPTempFile & " " & sSite & _
      " > " & sFTPResults, 0, TRUE
     
      Wscript.Sleep 1000
     
      'Check results of transfer.
      Set fFTPResults = oFTPScriptFSO.OpenTextFile(sFTPResults, ForReading, _
      FailIfNotExist, OpenAsDefault)
      sResults = fFTPResults.ReadAll
      fFTPResults.Close
     
      oFTPScriptFSO.DeleteFile(sFTPTempFile)
      oFTPScriptFSO.DeleteFile (sFTPResults)
     
      If InStr(sResults, "226 Transfer complete.") > 0 Then
        FTPUpload = True
      ElseIf InStr(sResults, "File not found") > 0 Then
        FTPUpload = "Error: File Not Found"
      ElseIf InStr(sResults, "cannot log in.") > 0 Then
        FTPUpload = "Error: Login Failed."
      Else
        FTPUpload = "Error: Unknown."
      End If
     
      Set oFTPScriptFSO = Nothing
      Set oFTPScriptShell = Nothing
    End Function

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    salut,

    ben la première chose à faire avant d'écrire ton code VBScript c'est de te renseigner sur la "commande" ftp du "dos"... et ce qu'elle demande et ce qu'elle rend ...

    pour ce passage à travers le proxy ( il faut aussi savoir comment tu peu passer à travers le proxy avec cette commande)

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

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 840
    Points : 9 225
    Points
    9 225
    Par défaut
    Citation Envoyé par bbil Voir le message
    salut,
    ben la première chose à faire avant d'écrire ton code VBScript c'est de te renseigner sur la "commande" ftp du "dos"... et ce qu'elle demande et ce qu'elle rend ...
    pour ce passage à travers le proxy ( il faut aussi savoir comment tu peu passer à travers le proxy avec cette commande)
    Oui exactement c'est ca ce que je cherche bbil c'est la bonne syntaxe de la commande "commande" ftp du "dos" et ce qu'elle demande et ce qu'elle rend ...
    j'ai chercher partout dans le Net et j'ai pas réussi a le faire marcher.
    Quand je configure mon FileZilla sur les paramètres de Proxy ou bien quand je passe par internet explorer utilisant le protocole ftp la ca marche bien.
    Donc la seule chose qui m'échappe c'est comment la configurer en mode ligne de commmande càd la bonne syntaxe de la commande "commande" ftp du "dos" ????
    Donc je me demande ou je peux poser ce genre de Problème et dans quel Forum exactement pour maximiser mes chances a trouver la bonne solution.

    Encore un grand merci pour vous bbil pour les éclaircissement des idées et pour la décortication de mon problème.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2008
    Messages : 252
    Points : 124
    Points
    124
    Par défaut
    cmd > ftp > help

    Ensuite si tu veux plus d'info sur une commande précise, tappes:
    ? NomDeCommande


    Hope it helps ^^!

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

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 840
    Points : 9 225
    Points
    9 225
    Par défaut
    Citation Envoyé par sokai Voir le message
    cmd > ftp > help
    Ensuite si tu veux plus d'info sur une commande précise, tappes:
    ? NomDeCommande
    Hope it helps ^^!
    Thank you sokai for your Reply !
    mais malheureusement ca ne résous pas mon problème il n'y a pas une commande magique qui se nomme "proxy"
    en tout cas merci bien pour l'information

Discussions similaires

  1. [FTP] Télécharger un fichier par FTP
    Par jerome38000 dans le forum Langage
    Réponses: 5
    Dernier message: 27/05/2011, 15h41
  2. [Upload] upload de fichier par ftp
    Par sami_c dans le forum Langage
    Réponses: 3
    Dernier message: 22/03/2006, 11h18
  3. Upload de fichier par XMLHTTP
    Par Immobilis dans le forum ASP
    Réponses: 6
    Dernier message: 21/01/2005, 17h02
  4. Transfert de fichier par ftp
    Par schub1015 dans le forum MFC
    Réponses: 3
    Dernier message: 14/01/2004, 17h53
  5. Réponses: 1
    Dernier message: 19/08/2003, 16h11

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