2012-11-14 12 views
7

Sono in grado di definire il server proxy utilizzando la GUI WinSCP. Se faccio questo, sono in grado di connettermi a un host remoto. Ma nel codice non trovo un modo per dichiarare il server proxy per WinSCP.Assembly WinSCP .NET: dove definire il proxy?

In questo caso ricevo

server remoto ha restituito un errore di autenticazione proxy (407) richiesto.

Il mio codice:

SessionOptions sessionOptions = new SessionOptions 
    { 
     Protocol = protocol, 
     HostName = hostname, 
     UserName = user, 
     Password = pass, 
     PortNumber = portnumber 
    }; 

using (Session session = new Session()) 
{ 
    session.ExecutablePath = @"C:\Program Files (x86)\WinSCP\WinSCP.exe"; 
    session.Open(sessionOptions); 

    TransferOptions options = new TransferOptions(); 
    options.FileMask = mask; 


    SynchronizationResult synchronizationResult; 
    synchronizationResult = 
     session.SynchronizeDirectories(mode, local, path, deletefiles, options: options); 

    synchronizationResult.Check(); 
} 
+0

Che tipo di proxy è? Non sembra un proxy dei calzini ... – arkascha

risposta

10

Utilizzare la SessionOptions.AddRawSettings per configurare le impostazioni di sessione prime appropriate per il tipo di proxy.

Ad esempio:

sessionOptions.AddRawSettings("ProxyMethod", "3"); 
sessionOptions.AddRawSettings("ProxyHost", "proxy"); 

visualizzare un elenco completo di raw sessions settings.


Anche se un modo più semplice è quello di configure the proxy in WinSCP interfaccia grafica e lo hanno generate a code template per voi.

+1

Grazie Martin, per questa risposta e per tutto ciò che hai fatto con WinSCP. –