Bonjour, j'ai une application Open Source qui doit télécharger des fichiers sur des sites FTP. Je souhaite fournir, dans le paramétrage, les trois possibilités bien connu :
1- Pas de proxy
2- Utiliser les informations d'Internet Explorer
3- Utiliser ces informations : NomDuServeur, PortDuServeur, NomUtilisateur, MotDePasse.
J'utilise le code suivant :
Cela me renvoi systématiquement une erreur 407:Authentification Proxy requise.
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 { FtpWebRequest ftpRequest = null; FtpWebResponse ftpResponse = null; try { ftpRequest = (FtpWebRequest)FtpWebRequest.Create(@"ftp://ftp.dell.com/catalog/DellSDPCatalogPC.cab"); ftpRequest.Proxy = GetWebProxy(); ftpRequest.UseBinary = true; ftpRequest.UsePassive = true; ftpRequest.KeepAlive = true; ftpRequest.Method = WebRequestMethods.Ftp.DownloadFile; ftpResponse = (FtpWebResponse)ftpRequest.GetResponse(); // Error 407 : Proxy Authentification Required. } } private System.Net.IWebProxy GetWebProxy() { System.Net.IWebProxy proxy = System.Net.WebRequest.GetSystemWebProxy(); proxy.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials; return proxy; }
Donc je suppose que le code n'arrive pas à récupérer les informations d'identification d'Internet Explorer pour le Proxy.
A noter que le code pour la méthode GetWebProxy, fonctionne très bien pour des requêtes HTTP. dOnc pourquoi cela ne fonctionne pas pour du FTP ??
Quelqu'un peut-il me dire comment récupérer les informations d'identification d'Internet Explorer pour passer le Proxy ?
Merci.
Partager