2012-11-14 24 views
7

मैं WinSCP GUI का उपयोग करके प्रॉक्सी सर्वर को परिभाषित करने में सक्षम हूं। अगर मैं ऐसा करता हूं तो मैं रिमोट होस्ट से कनेक्ट करने में सक्षम हूं। लेकिन कोड में मुझे WinSCP के लिए प्रॉक्सी सर्वर घोषित करने का कोई तरीका नहीं मिला है।विनएससीपी .NET असेंबली: प्रॉक्सी को परिभाषित करने के लिए कहां?

इस मामले में मैं

रिमोट सर्वर में कोई त्रुटि (407) प्रॉक्सी प्रमाणीकरण आवश्यक लौटे प्राप्त करते हैं।

मेरे कोड:

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

वह किस तरह की प्रॉक्सी है? मोजे प्रॉक्सी की तरह दिखता नहीं है ... – arkascha

उत्तर

10

प्रॉक्सी के अपनी तरह के लिए उपयुक्त अपरिष्कृत सत्र सेटिंग कॉन्फ़िगर करने SessionOptions.AddRawSettings का प्रयोग करें।

उदाहरण के लिए:

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

raw sessions settings की एक पूरी सूची देखें।


हालांकि एक तरह से आसान WinSCP जीयूआई में configure the proxy के लिए है और यह आप के लिए generate a code template है।

+1

धन्यवाद मार्टिन, इस उत्तर के लिए और आपने WinSCP के साथ किया है। –