- PR -

[VB.NET]CrystalReport表示時にエラー

1
投稿者投稿内容
Taito
常連さん
会議室デビュー日: 2005/07/21
投稿数: 43
投稿日時: 2007-04-16 17:12
VB.NET 2003でWindowsアプリケーションを開発しています。

DBはMSSQL、出力範囲を指定し、データベースのデータを
CrystalReportに表示するというもので、既にリリース済み、
現在は変更の要望が来たらその都度変更したりしている状態です。

問題のPCはWindows Vista Businessで
範囲を指定し、CrystalReportを表示する時に
「Cannot find KeycodeV2.dll, or invalid keycode.」
というエラーが出ました。

もちろん、REGWIZ.MSM マージモジュールの License Key プロパティにキーコードを
入力というのも行っております。
ですので、今まで数十台もの端末(2K、XP)にインストールして
使ってもらっていましたが、問題なく動作しています。

Framenet1.1のインストールが出来ていないのかと思い
再度、dotnetfx.exeとlangpack.exeを入れたところ
エラーは日本語に変わっただけで、やはりエラーは出ます。
「キーコードdllが見つからないか、又はキーコードが無効です」

OSがVistaのせいか?と思い、他のVistaの方にもインストールして
動作確認してもらったのですが問題なく表示できます。

もし、同じような現象に遭われた方、解決方法や確認方法など
分かる方いらっしゃいましたらアドバイスを頂けないでしょうか。

どうかよろしくお願い致します。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-04-16 18:18
引用:

Taitoさんの書き込み (2007-04-16 17:12) より:

問題のPCはWindows Vista Businessで範囲を指定し、CrystalReportを表示する時に
「Cannot find KeycodeV2.dll, or invalid keycode.」というエラーが出ました。
もちろん、REGWIZ.MSM マージモジュールの License Key プロパティにキーコードを入力というのも行っております。


CrystalDecisions.CrystalReports.Engine.InternalException であれば環境の問題だと思います。
(よもや、64 ビット環境とかではないと思いますが)

Windows Vista の場合は、.NET Framework 2.0 に対応した CrystalReports を使うことが推奨されます。

引用:

Framenet1.1のインストールが出来ていないのかと思い


関係ないところですが、.NET Framework ですね。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Taito
常連さん
会議室デビュー日: 2005/07/21
投稿数: 43
投稿日時: 2007-04-17 15:37
じゃんぬねっとさん、ありがとうございます。

引用:

じゃんぬねっとさんの書き込み (2007-04-16 18:18) より:
CrystalDecisions.CrystalReports.Engine.InternalException であれば環境の問題だと思います。
(よもや、64 ビット環境とかではないと思いますが)

Windows Vista の場合は、.NET Framework 2.0 に対応した CrystalReports を使うことが推奨されます。



CrystalDecisions.CrystalReports.Engine.InternalExceptionでした。
64ビットではありません。ということは環境ですね。前途多難です;

.NET Framework 2.0というと、VB2005ですかね。
VB2005はExpressしか使用したことないのですがそれにはCrystalReportsが
付属してないし、ReportViewerも使用できないのかと思っていましたら

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?mode=viewtopic&topic=32866&forum=7&start=0

という記事を見つけたので、それもちょっとトライしてみようかと思います。

VS2005Proを買ってもらえれば解決なのですが;

引用:

関係ないところですが、.NET Framework ですね。



なんと、お恥ずかしい。ご指摘ありがとうございます。
会社でFramenetと呼んでいる人がいるのでそれが正しいのかと思っていました。
機会があれば訂正しておきます。(VB.NETとFrameworkが合体したのかも…^^?)

日本語がおかしかったので修正しました。

[ メッセージ編集済み 編集者: Taito 編集日時 2007-04-17 18:29 ]
Taito
常連さん
会議室デビュー日: 2005/07/21
投稿数: 43
投稿日時: 2007-05-10 16:30
話をぶり返して申し訳ありません。

VB2005に置き換えるというのは達成できず、この問題は解決していない状態で
なんとか、VB2003で解決できないものかと悩んでおります。

今までこのアプリケーションをインストールしているVISTAのPCは3台あり、
2台問題なし・1台エラーが出るだったのですが
使用可能だった1台のOS再インストールしたら、エラーが出るように
なってしまいました。
再インストールした人に何か思い当たることがないか聞きましたが、
特に思いつかないそうです。

また、問題のアプリケーションはWEBアプリケーションではないのですが
http://japan.businessobjects.com/support/crystalreports9/faq_dotnet.asp#net_web
という記事を見つけたので
そのレジストリのアクセス権にそのユーザが入っていない等、問題がないか
確認してみましたがそれは問題ないようです。

どんなに検索しても
1.セットアップ作成時にキーコードを登録していない
2.WEBであれば、レジストリのアクセス権
しか見つからず、英語サイトも沢山みてみましたが上の2つばかりでした。

同じPCでも表示できたり、表示できなかったりしたので
何かVISTAの設定次第で解決できるのではないかと思っているのですが
何か思い当たる点などございましたら、教えて頂きたいのです。

よろしくお願い致します。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-05-10 17:06
引用:

Taitoさんの書き込み (2007-05-10 16:30) より:

今までこのアプリケーションをインストールしているVISTAのPCは3台あり、2台問題なし・1台エラーが出るだったのですが使用可能だった1台のOS再インストールしたら、エラーが出るようになってしまいました。再インストールした人に何か思い当たることがないか聞きましたが、特に思いつかないそうです。


よもや UAC の影響とは考えたくないのですが...

とりあえず、Windows XP SP2 の互換性モードで試して頂いて良いですか?
また特権レベルは 「管理者」 にしてアプリケーションを実行してみてください。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Taito
常連さん
会議室デビュー日: 2005/07/21
投稿数: 43
投稿日時: 2007-05-10 20:29
じゃんぬねっとさん、ありがとうございます。

引用:

よもや UAC の影響とは考えたくないのですが...

とりあえず、Windows XP SP2 の互換性モードで試して頂いて良いですか?
また特権レベルは 「管理者」 にしてアプリケーションを実行してみてください。



Windows XP SP2 の互換性モードにしても、エラーが出ました。
特権レベルを 「管理者」というのはグレーアウトして設定ができませんでした。

[管理者としてこのプログラムを実行する] チェック ボックスが使用できない場合は
1.アプリケーションが常に特権を昇格して実行することをブロックされているか
2.アプリケーションの実行に管理者の資格情報が不要であるか
3.コンピュータに管理者としてログインしていないか
のいずれかです。とありましたが

今、ログインしているユーザーはAdministrators権限なので3ではないと思います。
1と2は良くわからないので、もう少し調べて試してみようと思います。

また、少し進展(?)がありました。

使えなかった1台が使えるようになったのです。

話ではframework2.0をインストールしようとしただけのようです。
(VISTAは3.0が入っているため2.0をインストールしようとすると途中で
中止されますが、中止した後、使用できるようになっていたようです)

もう一台の使えなかったPCも同じようにしてみたのですが
それは解決しなかったので、結局のところ原因は分からないのですが…。

もう少し、色々試してみようと思います。
Taito
常連さん
会議室デビュー日: 2005/07/21
投稿数: 43
投稿日時: 2007-06-22 17:44
解決(?)したというか、無事に動作するようになりましたのでご報告致します。
もし、同じような現象で困っている方がいらっしゃいましたら参考にして下さい。

まず、

引用:

使えなかった1台が使えるようになったのです。

話ではframework2.0をインストールしようとしただけのようです。
(VISTAは3.0が入っているため2.0をインストールしようとすると途中で
中止されますが、中止した後、使用できるようになっていたようです)

もう一台の使えなかったPCも同じようにしてみたのですが
それは解決しなかったので、結局のところ原因は分からないのですが…。



という話でしたが、このPCも次の時には使えなくなっていました。
偶然、奇跡の動作だったようです;;


結局、フリダシに戻り、その後も色んなことを調べたのですが
ほぼ、お手上げ状態でした。
 # 英語のサイトでも同じような現象に遭われている方がいたのですが未解決でした

しかし、本日、セットアップの途中に出てくる選択肢、

「現在のユーザー用か、またはすべてのユーザー用にインストールします」
・すべてのユーザー
・このユーザーのみ

で「すべてのユーザー」を選択しインストールを行ったら、
正常にCrystalReportが表示できるようになりました。Vista2台ともです。
 # たまたま動作していた1台のVistaは確かに「すべてのユーザー」で
 # インストールを行ったということを確認しました

2K、XPの場合は「このユーザーのみ」でも正常に動作していたのですが
Vistaの場合は「すべてのユーザー」にしないと駄目みたいです。


ちなみに、その後Vistaに再び「このユーザーのみ」を選択してインストールして
試したら、やはりエラーが出て、CrystalReportが表示できませんでした。
1

スキルアップ/キャリアアップ(JOB@IT)