2017年10月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
無料ブログはココログ

« またまたミニゴリラのワンセグ用アンテナ | トップページ | 90,000km »

2008.02.27

「VisualBasic6.0互換性ライブラリ」にはまった

Visual Studio 2003のVisualBasic .NETで作ったプログラムを別のPCで動かしたところ、

「アプリケーションで、ハンドルできない例外が発生しました。」

というエラーが発生してしまいました。weep
画面も表示されないうちに落ちてしまうので、なんだか訳が判りません。
どうやら、InitializeComponent()の中でエラーになっている様子。
こんな、自動生成されたソースの部分で落ちてもらっても困るんだけど……
開発環境では当然動いているのですが。

いろいろ調べてみると、どうやらVisualBasic6.0互換性ライブラリ(Microsoft.VisualBasic.Compatibility.dll)が無いと言っている可能性が高そうです。このDLLはSDKではインストールされますが、.NET Framework 1.1のランタイムには含まれていないのです。
VisualBasicから移行したプログラムで使われるものらしいのですが、今回のプログラムは最初からVisual Studio 2003で作っているのでそんなものは使っていないはず……と思ったら、なんと原因はDriveListBoxでした。
DriveListBoxやFileListBoxなどは非標準の.NET Frameworkコンポーネントですが、使用時に追加のインストールが必要な訳ではありません(設定は必要だけど)。なので、ランタイムに含まれていないようなライブラリに入っているとは思いませんでした。

DriveListBoxをあきらめて自力で普通のコンボボックスにドライブの一覧を作るようにしたら、ランタイム環境でも動くようになりました。

なお、.NET Framework 2.0ではこのDLLもランタイム環境にも含まれているみたいです。
Visual Studio 2008も発売されているのだから、今更2003なんか使うなということなのかも。sweat01

« またまたミニゴリラのワンセグ用アンテナ | トップページ | 90,000km »

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/39755/40284554

この記事へのトラックバック一覧です: 「VisualBasic6.0互換性ライブラリ」にはまった:

« またまたミニゴリラのワンセグ用アンテナ | トップページ | 90,000km »

にほんブログ村

Amazon.co.jp