Question
FTP upload de fichier taille limité à > 2Go
- UrZA
- Auteur du sujet
- Hors Ligne
- Membre junior
-
- Messages : 25
- Remerciements reçus 0

J'ai regardé la solution proposé et vu mes faibles connaissance je n'ai pas été apte à la mettre en place...

Mais malgré tout, avec le mot découper Laurent m'a donné une idée, et je me suis dit pourquoi donc ne pas découper les zip ^^.
Moralité j'ai refait mon script afin qu'il envoie tous les fichiers contenu dans un dossier.
L'idée cette fois ci est de faire le listing de tous les fichiers existant dans un dossier et de les envoyer 1 par 1. J'ai tenté avec la boucle foreach. Je me suis \"inspiré\" du post de benduru sur l'explication du foreach
Sauf que j'ai encore une erreur. (Du coup j'ai été banni de mon FTP

L'erreur:
Vous ne pouvez pas appeler de méthode sur une expression ayant la valeur Null.
Au niveau de ligne : 31 Caractère : 11
+ $S.Dispose <<<< ()
+ CategoryInfo : InvalidOperation: (Dispose:String) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
Exception lors de l'appel de « GetRequestStream » avec « 0 » argument(s) : « Le serveur distant a retourné une erreur : (550) Fichier non disponible (par exemple, fichier introuvable, accès impossible). »
Au niveau de ligne : 28 Caractère : 25
+ $S = $R.GetRequestStream <<<< ()
+ CategoryInfo : NotSpecified: ([], MethodInvocationException
+ FullyQualifiedErrorId : DotNetMethodException
[code:1][System.Reflection.Assembly]::Load
(\"System.Net, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a\"«»)
$Repertoire = \"C:\Folder\Serveur\Zip\\"
$Fichiers = Get-ChildItem $Repertoire
Foreach ( $Fichier in $Fichiers )
{
#The full path to the source file.
$Source = \"$($Repertoire)\$($Fichier.Name)\"
#The full destination path (will be created).
$Destination = \"ftp://icietla.net/$($Repertoire)/$($Fichier.Name)\"
#Use the static method Create to create a web request.
#Pass the destination as an argument, and cast it to a FtpWebRequest.
$R=[System.Net.FtpWebRequest][System.Net.WebRequest]::Create($Destination)
#Tell the request how it will login (using a NetworkCredential object)
$R.Credentials = New-Object System.Net.NetworkCredential(\"user@domain.com\", \"*Passwrd*\"«»)
#...and what kind of method it will represent. A file upload.
$R.Method = \"STOR\"
#Here I use the simplest method I can imagine to get the
#bytes from the file to an byte array.
$FileContens = [System.IO.File]::ReadAllBytes($Source)
#Finaly, I put the bytes on the request stream.
$S = $R.GetRequestStream()
$S.Write($FileContens, 0, $FileContens.Length)
$S.Close()
$S.Dispose()[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6298
- Remerciements reçus 68
C'était juste une piste.J'ai regardé la solution proposé et vu mes faibles connaissance je n'ai pas été apte à la mettre en place...
UrZA écrit:
Beau contournementet je me suis dit pourquoi donc ne pas découper les zip ^^.

UrZA écrit:
Sous dotNET la méthode Close, par convention appel en interne la méthode Dispose(), l'appel à Close suffit.Sauf que j'ai encore une erreur.
De plus tu peux l'imbriquer dans une clause Try/Finally, ainsi dans tous les cas tu seras assuré de libérer les ressources.
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- FTP upload de fichier taille limité à > 2Go