0

クライアントの SFTP からファイルをダウンロードしています。Filezilla から実行すると、常に標準的な方法で成功します。

一方、SFTP 通信に Tamir SharpSSH ライブラリを使用するアプリから実行すると、ファイルのすべてのダウンロード試行が失敗する期間が常に発生します。

そのコードは数か月間変更されておらず、そうでない場合よりもはるかに頻繁に機能したため、アプリが機能することはわかっていますが、1日以上すべてのファイルのダウンロードがアプリでのみ失敗すると、期間が再燃し続けます.

私が得る例外は Tamir.SharpSsh.jsch.SftpException です。明らかにあまり役に立ちません。

私の推測では、クライアント側はまだライブになっていないため、クライアント側で変更を行っているか、アクセス許可を変更していますが、例外メッセージはわかりません。

誰か提案がありますか?どこで解決策を探すことができますか? 何をテスト/試す必要がありますか?

ありがとうございました!

4

1 に答える 1

1

本当のメッセージは「そのようなファイルはありません」でした。その理由は、構成ファイルの 1 つで、ルート フォルダー パスのスラッシュが省略されていたためです。VS Watch で例外変数を開くと、標準例外のすべての情報プロパティが null であるか、単に「Tamir.SharpSsh.jsch.SftpException」に設定されていることがわかります。

しかし、Tamir.SharpSsh.jsch.SftpException クラスに追加のプロパティが追加されたようです - 「メッセージ」であり、実際のメッセージが保存される場所ですが、Exception.Message は「Tamir.SharpSsh.jsch.SftpException」に設定されることがよくあります。 . 問題は、追加のプロパティが非公開であり、VS Watch または同様のものによってのみ表示されることです。

私たちの例外伝播メカニズムは Exception.Message のロギングに基づいているため、ほとんどの場合、「Tamir.SharpSsh.jsch.SftpException」を取得していました。

于 2015-07-07T13:22:22.653 に答える