現在書いているコードは簡単なもので、指定のURLからテキストをダウンロードし、現在のバージョンよりも新しかったら最新のファイルをダウンロードするようサイトに誘導するようにしています。
しかし、これでは更新確認にすこし時間がかかります。もうすこし早く確認できるように出来ませんか?
Dim request As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create("http://sample.jp/updater.txt")
Dim response As System.Net.HttpWebResponse = request.GetResponse()
Dim sr As System.IO.StreamReader = New System.IO.StreamReader(response.GetResponseStream())
Dim newestversion As String = sr.ReadToEnd()
Dim currentversion As String = Application.ProductVersion
If newestversion.Contains(currentversion) Then
Console.WriteLine("更新は見つかりませんでした")
Else
MessageBox.Show("更新が見つかりました。" + vbCrLf + "配布元より最新のファイルをダウンロードしてください。")
Process.Start("http://sample.jp")
End If
サーバのレスポンスが悪いのでは?
どういったタイミングでチェックするのかわかりませんが、手動であれば、定期的にバックグラウンドでアクセスして結果をキャッシュするようにしたらどうでしょうか?
起動時とかなら別スレッドにするとか非同期アクセスにするとかで、他の処理と並行するようにしたら良いのでは?
もしくはサーバのレスポンスが本当に悪い場合は、それ用にレスポンスの良いサーバを確保するとか。現状のサーバなどの状況が分からないので何とも言えませんけれど。
コメント(0件)