using FTP; using Microsoft.Extensions.Configuration; using System.Collections.Generic; using System.Configuration; using System.Linq; using System.Threading.Tasks; using WinSCP; namespace IMCS_CCS.Utils.DeviceProtocol { public class DeviceWinSCP { SessionOptions sessionOptions; WinSCP.Session session; public DeviceWinSCP(string UserName, string Password, string HostName) { sessionOptions = new SessionOptions(); sessionOptions.UserName = UserName; sessionOptions.Password = Password; sessionOptions.HostName = HostName; sessionOptions.PortNumber = 22; sessionOptions.Protocol = Protocol.Scp; WinSCP.Session session = new WinSCP.Session(); var fingerprint = session.ScanFingerprint(sessionOptions, "SHA-256"); sessionOptions.SshHostKeyFingerprint = fingerprint.ToString(); session.Open(sessionOptions); } public void PutFile(string FileName, string LocalPath, string RemotePath) { TransferOptions transferOptions = new TransferOptions(); string localfilepath = LocalPath + FileName; transferOptions.TransferMode = TransferMode.Binary; session.PutFileToDirectory(localfilepath, RemotePath, false, transferOptions); session.Close(); } } }