- 17 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/25(金) 08:33:36 ID:???0]
- 書いてたらスレなくなってるとかどんだけ時間かかってるんだよ。
>>前スレ580 JavaScriptがシェルを起動してるだけ、問題ない。 >>前スレ639 .Net Frameworkのソフトだからメモリリークはない。リソースリークはしてると思う。 >>前スレ866 ダウンロード自体は.Net Frameworkに組み込みのモジュールを使ってるから ニコニコに負担はかけてない。 アプリ自体が重すぎでダウンロードに失敗するのはよくある。 nicotoolLiteのversion 1.0.8をちょっとだけ解析してみた。 ざっと見た感じスパイウェアを入れるコードはなかった。 悪意のあるコードもない感じ。 一番問題なのが、リソースを解放する必要がある個所でエラーが 起こった場合の後始末処理をしてないこと。 エラーが起こるとレジストリキーやらファイルやら通信リソースやらが 解放されないから、ファイルが消せなくなったり重くなったりする。 起動時間が長いとえらいことになるな。 あとHTTPの通信をユーザーインターフェイスを処理する部分でやってるから。 通信が止まるとユーザーインターフェイスを処理できなくなって重くなる。 アプリが重くなるとダウンロード作業自体も妨害されて失敗することが多くなる。 レジストリをいじってるのは見た感じ一箇所だけ。 IEのコンテキストメニューに項目を追加する部分。これはやらないとIEで使えない。 作者の人が見てるかもしれないから書くけど、頼むからusing構文使ってくれ。 tryブロックがどこにも一つもないとか あ り え な い か ら VSetup.getHtml()メソッドはスクリプトファイルを読み込んで シェルの起動部分だけReplaceしたほうが楽だと思う。 Replace("{AppPath}", Path.Combine(AppPath, "nicotoollite.htm")みたいな感じで。 HttpBaseクラスは非同期呼び出しで書き換えたほうがいいと思う。 ダウンロード中に常に重い原因は、 VDownload.downloadClient_DownloadProgressChanged でラベルを書き換えすぎだからだと思う(たぶん)。 ダウンロード進捗の更新は1秒に1回でいいと思うよ。 ついでに同一ポイントへの最大接続数は ServicePointManager.DefaultConnectionLimitで変えられる。 >>17 暇人ニート乙
|

|