如何使用chilkat上传文件?

时间:2019-04-15 17:48:22

标签: c# chilkat

编辑:发现了问题。 尝试保存文件时,我没有键入整个文件夹结构。 现在问题已解决。

我正在尝试使用c#和chilkat向客户上传文件,但是我一直收到错误代码。

我在一家物流公司工作,我们与客户有很多类型的整合。我们使用c#和chilkat已有一段时间,它可以与我们拥有的所有其他客户一起使用。这是一个新客户,但是我使用FileZilla进行了测试,并且一切正常(创建,删除,下载,上传),凭据相同。 我们的Chilkat许可证已更新(今天),并且我们具有最新版本。 我已经与其他客户进行了测试,使用相同的代码,并且可以正常工作(超过10个其他客户)

string username = "login";
string password = "pass";

Chilkat.SFtp sftp = new Chilkat.SFtp();
bool success = sftp.UnlockComponent("Hello World");
if (success != true)
    throw new Exception("Invalid License");

sftp.ConnectTimeoutMs = 5000;
sftp.IdleTimeoutMs = 10000;
success = sftp.Connect("address", 22);
if (success != true)
    throw new Exception("Host could not be reached. Invalid Host.");
success = sftp.AuthenticatePw(username, password);
if (success != true)
    throw new Exception("Invalid Credentials.");

success = sftp.InitializeSftp();
if (success != true)
    throw new Exception("Connection could not be initialized.");

string[] fileList = Directory.GetFiles(@"c:\files\");
foreach (string item in fileList)
{
    string handle = sftp.OpenFile("IN/" + Path.GetFileName(item), "writeOnly", "createTruncate");
    if (handle == null)
    {
        string lastErrorText = sftp.LastErrorText;
        //throw new Exception("Could not create a handle for the desired file");
    }
    else
    {
        success = sftp.UploadFile(handle, item);
        if (success != true)
            throw new Exception("Could not Upload the File");
        else
            Console.WriteLine("File {0} uploaded", item);

        success = sftp.CloseHandle(handle);
        if (success != true)
            throw new Exception("Could not close the handle");
        else
            File.Delete(item);
    }
}

我希望上传文件,但是失败。 “ LastErrorText”变量返回以下文本:

ChilkatLog:
  OpenFile:
    DllDate: Mar 18 2019
    ChilkatVersion: 9.5.0.77
    UnlockPrefix: Start my 30-day Trial
    Architecture: Little Endian; 32-bit
    Language: .NET 4.6 / x86 / VS2017
    VerboseLogging: 0
    SshVersion: SSH-2.0-SSHD-CORE-1.7.0
    SftpVersion: 3
    sftpOpenFile:
      remotePath: IN/214KCF_S903211745.txt
      access: writeOnly
      createDisposition: createTruncate
      v3Flags: 0x1a
      Sent FXP_OPEN
      StatusResponseFromServer:
        Request: FXP_OPEN
        InformationReceivedFromServer:
          StatusCode: 3
          StatusMessage: operation not permitted
        --InformationReceivedFromServer
      --StatusResponseFromServer
    --sftpOpenFile
    Failed.
  --OpenFile
--ChilkatLog

0 个答案:

没有答案