私のC#プロジェクトでは、SFTPサーバーに接続するためにChilkatDotNet2.dll
を追加しました。今のところ、私は次のようなシンプルな接続方法implemtしようとしています:ChilkatDotNet2:サーバーに接続SFTP
Chilkat.Ftp2 F = null;
F = (Chilkat.Ftp2)new Chilkat.Ftp2();
F.Hostname = "sftp.domain.com";
F.Username = "username";
F.Password = "password";
F.Port = 22;
F.AuthTls = true;
if (!(F.Connect())) {
MainFrm.set_AlertMessage(F.ConnectFailReason);
}
をし、それが常に接続失敗し、私は常に接続
を意味し、エラー200を得るが、受信に失敗しましたFTPサーバーからの挨拶
Chilkatの文書による。
私には何が欠けていますか?私は単純なftpサーバテスト(SSL/TLSなし)に接続しようとしました。正しく接続されているので、何か不足していると思います。 FilezillaでSFTPサーバーに接続しようとすると、私が与えた資格情報は正しいです。 ありがとうございます。
UPDATE
Chilkat.SFtp v_SFTP = null;
v_SFTP = (Chilkat.SFtp)new Chilkat.SFtp();
if (v_SFTP.Connect("sftp.domain.com", 22) {
if (v_SFTP.AuthenticatePw("username", "password")) {
IDVariant v_SUCCESS = null;
bool v_SUCCESS = v_SFTP.InitializeSftp();
}
}
else {
MainFrm.set_AlertMessage(v_SFTP.LastErrorText);
}
200は完了しており、接続が良好であることを示しています。したがって、サーバーは挨拶を送信しませんでした。サーバーが挨拶を送信しなかった可能性があります。あなたがFilezillaでログオンしたときに挨拶をしましたか? – jdweng
私はwiresharkやfiddlerのようなスニファを使い、ChilkatDotNet2とFilezillaの両方の接続をキャプチャします。私はあなたがhttpヘッダーを見逃していると思いますが、わかりません。 – jdweng
@jdweng:ご返事ありがとうございます。あなたが私に提案したことをやろうとしていますが、Fiddlerが.NETコードを実行しているWebアプリケーションやFileZillaからFTOに関する情報を取得できないようです。とにかく、私はCassiniを使用して、Webアプリケーションを展開する前にローカルでテストしなければなりません。これが問題だろうか? –