質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VB

VB(ビジュアルベーシック)はマイクロソフトによってつくられたオブジェクト指向プログラミング言語のひとつで、同社のQuickBASICが拡張されたものです。VB6の進化版といわれています。

Q&A

2回答

9245閲覧

VB.netプログラムでSFTPサーバよりファイル送受信をすると予期せぬエラーが発生する

infottester1

総合スコア8

VB

VB(ビジュアルベーシック)はマイクロソフトによってつくられたオブジェクト指向プログラミング言語のひとつで、同社のQuickBASICが拡張されたものです。VB6の進化版といわれています。

0グッド

0クリップ

投稿2016/09/20 08:08

編集2016/09/26 12:53

###前提・実現したいこと
SFTPサーバを構築し、クライアントからサーバよりファイル受信を行っているシステムでエラーが発生しました。エラーは2種類あり、クライアントがメッセージを出力してしまいます。クライアントはWINDOWSです.VB.netで構築しています。このようなメッセージが出る主な原因を知りたいです。
情報は少ないのですが、よろしくお願いいたします。

追記、エラーが発生していそうな箇所のコード記述とログを添付します。
###発生している問題・エラーメッセージ

System.ComponentModel.Win32Exception (0x80004005): 検証のために提供されたメッセージまたは署名が変更されています System.ComponentModel.Win32Exception (0x80004005): 関数に提供されているバッファーが小さすぎます。

###該当のソースコード

'信頼されないSSL証明書をパスする処理 ServicePointManager.ServerCertificateValidationCallback = New RemoteCertificateValidationCallback(AddressOf OnRemoteCertificateValidationCallback) ''==FTPリクエストの作成== Dim wFtpReq As FtpWebRequest = _ DirectCast(WebRequest.Create(CStr(OrderListForm.gIniFile("FTPServerURI")) & wDirUri), FtpWebRequest) '接続情報がある場合、リクエスト情報に設定する If Me.mFtpCredential IsNot Nothing Then 'Trueの場合SSL通信を行う wFtpReq.EnableSsl = True '接続情報を設定 wFtpReq.Credentials = Me.mFtpCredential End If 'FTPサーバーへ送信するコマンドを設定。ディレクトリ一覧を取得する wFtpReq.Method = WebRequestMethods.Ftp.ListDirectory 'Passiveモードで処理を行う wFtpReq.UsePassive = True '取得したディレクトリリスト Dim wDirList As New List(Of String)()

###試したこと
エラーログを拾いました
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,例外に関連するヘルプファイルへのリンク,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,HelpLink:,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,特定の例外に割り当てられるコード化数値,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,HResult:-2146233087,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,例外の原因となるExcption,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,InnerException:System.ComponentModel.Win32Exception (0x80004005): 検証のために提供されたメッセージまたは署名が変更されています,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,例外説明,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,Message:A call to SSPI failed, see inner exception.,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,エラーの原因となったアプリケーションまたはオブジェクト名,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,Source:System,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,直前のフレームの文字列形式,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,StackTrace: at System.Net.FtpWebRequest.SyncRequestCallback(Object obj)
at System.Net.FtpWebRequest.RequestCallback(Object obj)
at System.Net.CommandStream.Dispose(Boolean disposing)
at System.IO.Stream.Close()
at System.IO.Stream.Dispose()
at System.Net.ConnectionPool.Destroy(PooledStream pooledStream)
at System.Net.ConnectionPool.PutConnection(PooledStream pooledStream, Object owningObject, Int32 creationTimeout, Boolean canReuse)
at System.Net.FtpWebRequest.FinishRequestStage(RequestStage stage)
at System.Net.FtpWebRequest.GetResponse()
at SyohousenJyusinIchiran.CommonFtps.TryGetFtpDirectoryList(String wDirUri, List`1& wFileList),,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,例外がスローされたメソッド名,,
2016/09/23,11:30:01,CommonFtps,TryGetFtpDirectoryList,TargetSite:Void SyncRequestCallback(System.Object),,

パターン2

2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,例外に関連するヘルプファイルへのリンク,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,HelpLink:,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,特定の例外に割り当てられるコード化数値,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,HResult:-2146233087,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,例外の原因となるExcption,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,InnerException:System.ComponentModel.Win32Exception (0x80004005): 関数に提供されているバッファーが小さすぎます。,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,例外説明,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,Message:A call to SSPI failed, see inner exception.,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,エラーの原因となったアプリケーションまたはオブジェクト名,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,Source:System,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,直前のフレームの文字列形式,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,StackTrace: at System.Net.FtpWebRequest.SyncRequestCallback(Object obj)
at System.Net.FtpWebRequest.RequestCallback(Object obj)
at System.Net.CommandStream.Dispose(Boolean disposing)
at System.IO.Stream.Close()
at System.IO.Stream.Dispose()
at System.Net.ConnectionPool.Destroy(PooledStream pooledStream)
at System.Net.ConnectionPool.PutConnection(PooledStream pooledStream, Object owningObject, Int32 creationTimeout, Boolean canReuse)
at System.Net.FtpWebRequest.FinishRequestStage(RequestStage stage)
at System.Net.FtpWebRequest.GetResponse()
at SyohousenJyusinIchiran.CommonFtps.TryGetFtpDirectoryList(String wDirUri, List`1& wFileList),,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,例外がスローされたメソッド名,,
2016/09/23,11:44:55,CommonFtps,TryGetFtpDirectoryList,TargetSite:Void SyncRequestCallback(System.Object),,

###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

TechNetに以下の質問が上がっていました。
KB3163018 / KB3161949 (06/15,06/16 windows update)によるmysql sslmode接続不可について
参考になれば幸いです。

投稿2016/10/04 03:20

mrsd

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

0x80004005

どうもライセンスが怪しそうですね
ライセンス認証情報が壊れている又は変更されていませんでしょうか

投稿2016/09/20 08:20

kpiyohiko

総合スコア658

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

infottester1

2016/09/27 02:33

A call to SSPI failed, see inner exceptionがエラーメッセージの大元?としてキャッチできているのですが、そもそもこれはSSL通信における何らかの認証エラーと考えてよいのでしょうか?必ず出るのではなく、たまに発生しています。エラーが発生する原因を追求できればと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問