C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: Crystal Reportを使用したAPの起動時間


(過去ログ 77 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■45735 / inTopicNo.1)  Crystal Reportを使用したAPの起動時間
  
□投稿者/ maruma (1回)-(2010/01/19(Tue) 14:11:49)

分類:[.NET 全般] 

OS:Windows Vista
言語:VB.NET(2008)

いつもお世話になっております。

今回はCrystalReportについて質問があります。

CrystalReportを使用する画面の初回起動時(画面生成時?)に、
20秒前後かかるのですが、一度起動すると1秒前後で起動が可能です。
(秒数はPCスペックにもよるとは思うのですが…)

初回起動時はランタイムやエンジン初期化のため、
ある程度時間がかかるというのは理解していますが、
これほど影響が出るのかと不思議に思い調査してみました。

テスト用使用プロジェクト
[参照]
・CrystalDecisions.CrystalReports.Emgine
・CrystalDecisions.ReportSource
・CrystalDecisions.Shared
・CrystalDecisions.Windows.Form
他の参照はフォームアプリケーション生成時のデフォルトのみ。
[構成]
・メインフォーム1画面のみ(簡単な数字と線を描画するレポートファイル1つ)

テスト環境その@
OS:Windows Vista Business
CPU:intel Core2 Duo E8500 @ 3.16GHz
メモリ:4.00GB
種類:32ビット
インストール:Visual Studio 2008 標準インストール

テスト環境そのA
OS:@と同じ
CPU:@と同じ
メモリ:@と同じ
種類:@と同じ
インストール:CRRedist2008_x86.msi(インストーラ)


【結果】
@の環境
 初回起動時:1〜2秒 次回起動時:1秒以内
Aの環境
 初回起動時:17〜18秒 次回起動時:1秒以内


Visual Studio 2008がインストールされているかどうかで
ここまで差があるとは思いませんでしたが…
何かが足りない(CRRedist2008_x86.msiだけではダメ)のでしょうか?
ちなみにどちらもレポートプレビューが可能です。

Aの環境の改善方法として
Visual Studio 2008をインストールする!
以外で解決できないか知恵を貸して下さらないでしょうか??
よろしくお願いいたします。

引用返信 編集キー/
■45787 / inTopicNo.2)  Re[1]: Crystal Reportを使用したAPの起動時間
□投稿者/ やじゅ (1467回)-(2010/01/19(Tue) 22:34:10)
やじゅ さんの Web サイト
No45735 (maruma さん) に返信

CrystalReportを使用する画面の前に、別の.NETアプリ(何でも良い)を動かしてから
CrystalReportを使用する画面を起動させるとどうなりますか?

引用返信 編集キー/
■45789 / inTopicNo.3)  Re[2]: Crystal Reportを使用したAPの起動時間
□投稿者/ maruma (2回)-(2010/01/19(Tue) 23:35:07)
No45787 (やじゅ さん) に返信
> ■No45735 (maruma さん) に返信

返信ありがとうございます。

> CrystalReportを使用する画面の前に、別の.NETアプリ(何でも良い)を動かしてから
> CrystalReportを使用する画面を起動させるとどうなりますか?
レス内容を試してみました。
結果…何も変わりません。

以下に試した内容を記述します。

以前使用したアプリケーションをA.exeとします。
これは、メインフォームに表示ボタンが1つあり、
表示ボタンを押下することで簡単なレポートプレビューを表示するものです。
更に、
・A.exeプロジェクト内容を丸々コピーしたB.exe
・A.exeプロジェクトをクラスライブラリにしたC.dll
・C.dllを呼び出す(ShowDialog)ボタンを張ったメインフォームを持つD.exe
を用意しました。

検証その@
A.exe起動→B.exe起動を行う。

 [結果]
 A.exe起動時間 17秒
 B.exe起動時間 16秒(誤差?)

検証そのA
A.exe起動→D.exe起動→C.dll呼び出し

 [結果]
 A.exe起動時間 17秒
 D.exe起動時間 1秒以内
 C.dllメインフォーム表示時間 11秒

検証そのB
D.exe起動→C.dll呼び出し→C.dll閉じる→→C.dll呼び出し

 [結果]
 D.exe起動時間 1秒以内
 C.dllメインフォーム表示時間 13秒
 (閉じる)
 C.dllメインフォーム表示時間 1秒

※ なお、環境は前回投稿時のAのものです。


検証結果から、やはりCrystalReportのプロセスごとの初回読み込み時に
時間がかかっているように感じます。

難しい…私にはお手上げです。
どうにかして、 CrystalReportの初期化(?)を完了した状態で
初回時に参照出来ないでしょうか?
(ホットスタンバイみたいな…)

そもそも、プロセスごとに毎回初期化する必要があるのか疑問なのですが、
例えばSuperFetchのようなキャッシュ機能で補ったり出来るのでしょうか?

MS的には「だからVSを買って下さいね。」というアピールなのでしょうか…。涙



 







引用返信 編集キー/
■45793 / inTopicNo.4)  Re[3]: Crystal Reportを使用したAPの起動時間
□投稿者/ やじゅ (1470回)-(2010/01/20(Wed) 07:25:55)
やじゅ さんの Web サイト
No45789 (maruma さん) に返信
> MS的には「だからVSを買って下さいね。」というアピールなのでしょうか…。涙

VisualStudioとの因果関係は分かりませんね。
プログラムを工夫して少しでも起動時間を縮めるしかないのかも。
あとは、Crystal Reportの開発元に問い合わせるとか

「Crystal Report initial slow」でウェブ全体から検索
http://social.msdn.microsoft.com/forums/en-US/vscrystalreports/thread/f70cad38-dea9-4c4b-a812-9b2f2a7b4c08/
Crystal Reportの初回表示が遅い
http://social.msdn.microsoft.com/Forums/ja-JP/vbgeneralja/thread/296708fe-b2ff-4a79-9daf-39226eb47aa6
引用返信 編集キー/
■45829 / inTopicNo.5)  Re[4]: Crystal Reportを使用したAPの起動時間
□投稿者/ maruma (3回)-(2010/01/20(Wed) 17:39:21)
返信ありがとうございます。

No45793 (やじゅ さん) に返信
> ■No45789 (maruma さん) に返信
>>MS的には「だからVSを買って下さいね。」というアピールなのでしょうか…。涙
>
> VisualStudioとの因果関係は分かりませんね。
> プログラムを工夫して少しでも起動時間を縮めるしかないのかも。
> あとは、Crystal Reportの開発元に問い合わせるとか
>
> 「Crystal Report initial slow」でウェブ全体から検索
> http://social.msdn.microsoft.com/forums/en-US/vscrystalreports/thread/f70cad38-dea9-4c4b-a812-9b2f2a7b4c08/
> Crystal Reportの初回表示が遅い
> http://social.msdn.microsoft.com/Forums/ja-JP/vbgeneralja/thread/296708fe-b2ff-4a79-9daf-39226eb47aa6


やっぱり、そうですか…。

上記のサイトは投稿する前に一読しておりました。
そこでも、同じように解決していない方がいらしたので
ここで質問させて頂きました。

Crystal ReportについてMSに問い合わせを行ったところ
有料インシデントが無いということで、何も得られませんでした。
(買えばいいのですが…)


> あとは、Crystal Reportの開発元に問い合わせるとか
そうですね!
開発元に問い合わせてみます。

これ以上ここで回答待ちしても
迷惑かと思いますので一旦閉めたいと思います。

やじゅさん、ご教授ありがとうございました。









解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -