2012-11-14 17 views
7

Ich kann den Proxy-Server mit der WinSCP GUI definieren. Wenn ich das mache, kann ich mich mit einem entfernten Host verbinden. Aber im Code finde ich keine Möglichkeit, den Proxy-Server für WinSCP zu deklarieren.WinSCP .NET Assembly: Wo Proxy definieren?

In diesem Fall I erhalten

Remote-Server einen Fehler (407) Proxy-Authentifizierung erforderlich zurückgegeben.

Mein Code:

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

Welche Art von Proxy ist das? Sieht nicht wie ein Socken-Proxy aus ... – arkascha

Antwort

10

die SessionOptions.AddRawSettings Benutzen Sie den Basissitzungseinstellungen entsprechend Ihrer Art von Proxy zu konfigurieren.

Zum Beispiel:

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

eine vollständige Liste der raw sessions settings See.


Obwohl eine Art und Weise einfacher zu configure the proxy in WinSCP GUI ist und haben es generate a code template für Sie.

+1

Danke Martin, für diese Antwort und für alles, was du mit WinSCP gemacht hast. –