[Desespoir totale]probleme avec UploadFileAsync

warenbe Messages postés 145 Date d'inscription dimanche 2 décembre 2001 Statut Membre Dernière intervention 10 septembre 2009 - 15 janv. 2006 à 01:56
warenbe Messages postés 145 Date d'inscription dimanche 2 décembre 2001 Statut Membre Dernière intervention 10 septembre 2009 - 15 janv. 2006 à 02:19
bonsoir
j'espere que quelqu'un est encore vivant a cette heure ci de la nuit car j'ai besoin d'une aide urgente
et c'est le desespoir... :(

j'ai fais une appli qui envoit des fichiers sur un serveur en utilise UploadFileAsync(uri, filename)

bon... jusque la ça marchait bien
seulement j'ai modifié l'appli. mais rien sur l'envoi, juste des petits trucs... genre interrogation d'une page web pour recuperer des infos etc

depuis j'ai un gros probleme
quand je veux envoyer des fichiers un coup sur 10 (c au pif ....) uploadFileasync ne marche pas

au lieu de m'envoyer le fichier, il me dit direct qu'il est envoyé
vu que je recupere la reponse du serveur j'ai une grosse erreur System.reflection.exception

alors pourquoi est ce que uploadfileasync de temps en temps ne m'envoit pas le fichier (il reçoit pourtant bien le nom du fichier en parametre et le fichier existe bien et n'est pas modifie)

voila le code de mon appli ..


private void Envoi(string FileName)
{
rtetat.Focus();
rtetat.ScrollToCaret();
try
{
temoins = 1;
pbetat.Maximum = 100;
pbetat.Value = 0;

//on construit l'url
Uri uri = new Uri("http://www.lesite.com/76h7s.php?login=" + TbLogin.Text + "&pass=" + TbPassword.Text);
WebClient request = new WebClient();

//def des events
request.UploadFileCompleted += new UploadFileCompletedEventHandler(client_Completed);
request.UploadProgressChanged += new UploadProgressChangedEventHandler(client_Progress);


FileInfo fi = new FileInfo(FileName);
rtetat.AppendText("Envoi du fichier: " + FileName + "\n");
rtetat.AppendText("Taille: " + fi.Length.ToString());
float TailleMo = (float)(fi.Length / 1024);
TailleMo = TailleMo / 1024;
TailleMo = (float)Math.Round(TailleMo, 2);
rtetat.AppendText(" (" + TailleMo.ToString() + " Mo)\n");
//on defini l'heure d'envoi
savedsec = DateTime.Now.Second;
savedmilli = DateTime.Now.Millisecond;

request.UploadFileAsync(uri, FileName);
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
}


voila il me faut des pistes pour continuer a avancer
en tout cas j'ai viré les modifications que j'avais faites et ça plante toujours
j'ai pas envie de tout recommencer!

2 réponses

warenbe Messages postés 145 Date d'inscription dimanche 2 décembre 2001 Statut Membre Dernière intervention 10 septembre 2009
15 janv. 2006 à 02:07
OUAAAAIS
j'ai eu des elements nouveaux
donc ma question change

voila l'erreur:

"Unable to write data to the transport connection: Une connexion établie a été abandonnée par un logiciel de votre ordinateur hôte."
"The underlying connection was closed: An unexpected error occurred on a send."



bon... ok... mais pourquoi la connection a t elle ete coupée???? une idée??
j'ai remarqué un truc aussi:
je stoque la liste des fichiers dans une list box.
juste le path du fichier
quand j'envoi je recupere une par un les noms des fichiers pour les envoyer
j'ai donc regardé un truc: quand je met un fichier dans la liste et que j'envoi ça plante tres rarement
quand je met plusieurs fichiers dans la liste, que je les enleve tous, puis que je remet un seul fichier ça plante

pourtant j'ai verifié le nom du fichier avec le path est bien passé en parametre... y'a pas d'erreur de ce cote la.
et je vois pas pourquoi le fait d'enlever et ajouter des fichiers avant couperai la connexion au moment de l'envoi avec le site :(
0
warenbe Messages postés 145 Date d'inscription dimanche 2 décembre 2001 Statut Membre Dernière intervention 10 septembre 2009
15 janv. 2006 à 02:19
j'avance j'avance.
mais je comprend toujours pas pourquoi

voila ce qui se passe quand mon appli envoi correctement et que je sniff le port 80:
donc j'ai mon paquet avec plein de trucs...
et a la fin du paquet envoyé par mon pc j'ai ça:
Host: www.lesite.com
Content-Length: 814282
Expect: 100-continue <<< c la que c'est important

le serveur repond:
quelques symboles et a la fin:
HTTP/1.1 100 Continue

quand ça se passe bien donc j'ai ça. quand ça se passe mal, le serveur ne me repond pas HTTP/1.1 100 Continue.

il ne repond que les symboles avant (qui changent un peu) mais rien d'autre
pourquoi? est ce que ça vient de moi ? (avant ça le faisait jamais) ou du serveur?
est ce que le fait d'avoir changé la page php que j'interroge peut avoir cree ça?

et si ça vient du serveur pourquoi est ce que ça me le ferai quand j'enleve et je rajoute des fichiers et pas autrement?
0
Rejoignez-nous