dimanche 28 juin 2015

winscp Error occurred during logging. It's been turned off

I am developing a solution that uses winscp to upload zip file (contains multiple pdf files) to the remote sftp server. I am keep getting "Error occurred during logging, it's been turned off". Could anyone please tell me how to fix this error.

According to this http://ift.tt/1NoA9cB , I have created the log file.

The following class is the one that I am using.

 public class PSftp
{
    public void PutFile(string localfile)
    {
        //Send Ftp Files - same idea as above - try...catch and try to repeat this code 
        //if you can't connect the first time, timeout after a certain number of tries. 
        var sessionOptions = new SessionOptions
        {
            Protocol = Protocol.Sftp,
            HostName = ConfigurationManager.AppSettings["sFTPhost"],
            UserName = ConfigurationManager.AppSettings["sFTPuid"],
            Password = ConfigurationManager.AppSettings["sFTPpwd"],
            PortNumber = int.Parse(ConfigurationManager.AppSettings["sFTPport"]),
            SshHostKeyFingerprint = ConfigurationManager.AppSettings["sFTPhostkey"]

        };

        using (var session = new Session())
        {
            session.SessionLogPath = ConfigurationManager.AppSettings["sFTPlogPath"];
            session.DisableVersionCheck = false;
            session.DefaultConfiguration = false;
            session.Open(sessionOptions); //Attempts to connect to your sFtp site
            //Get Ftp File
            var transferOptions = new TransferOptions
            {
                TransferMode = TransferMode.Binary,
                FilePermissions = null,
                PreserveTimestamp = false
            };
            //<em style="font-size: 9pt;">Automatic, Binary, or Ascii  
            //null for default permissions.  Can set user, 
            //Group, or other Read/Write/Execute permissions. 
            //destination file to that of source file - basically change the timestamp 
            //to match destination and source files.   
            transferOptions.ResumeSupport.State = TransferResumeSupportState.Off;


            //the parameter list is: local Path, Remote Path, Delete source file?, transfer Options  
            TransferOperationResult transferResult = session.PutFiles(localfile, ConfigurationManager.AppSettings["sFTPInboxPath"], false, transferOptions);
            //Throw on any error 
            transferResult.Check();
            //Log information and break out if necessary
        };

    }
}

  //How to use the above class
  public void SaveFiletoFtp(string source)
    {
        var pftp = new PSftp();
        pftp.PutFile(source);
    }

Aucun commentaire:

Enregistrer un commentaire