.NETプログラムの配布

解決


ねこ  2008-08-22 23:41:21  No: 31641  IP: 192.*.*.*

BSD2006で.NETプログラムを作成しました。
内容は、電話番号を入力し、顧客を検索、表示すると言うものです。
このプログラムを他のPCで動かそうとすると
エラー画面が表示されてしまいます。
「アプリケーションテでハンドルできない例が発生しました。」
処理 ID=0xed0(3792) スレッド ID=0x694(1684) などが表示されます。
DBアクセスなど処理しないプログラムだと問題なく動作するのですが。
DB関連のDLLなど足らないのかと思いBSD2006のBIN内のDLLをEXEと
同じフォルダにコピー下のですが動作しませんでした。
動作しない原因、足らないDLLなどご存知の方お教えいただけないでしょうか?

編集 削除
走時  2008-08-23 02:54:37  No: 31642  IP: 192.*.*.*

対症療法的
FileMon (Sysinternals)
などで、exeがどのファイル(DLL)にアクセスしているのかモニタリングしてみる

原因療法的
そのDBコンポーネントのヘルプ(配布方法 deploy)をみる。

編集 削除
ねこ  2008-08-23 08:39:45  No: 31643  IP: 192.*.*.*

走時 さん
ヒントありがとうございます。
DBにはBDSを利用してOracleに接続しています。

FileMon (Sysinternals)でDLLなど確認してみます。

編集 削除
DingDong  2008-08-31 21:51:35  No: 31644  IP: 192.*.*.*

ねこさん、こんにちは。
「.NETプログラム」プログラムとありますが、
VCLフォームアプリ/Windowsフォームアプリのどちらでしょうか?

いずれにしても、アプリが参照しているアセンブリが配布先PCのGACに登録
されていないのが原因ではないでしょうか。

それが原因でないとしたら、配布先PCにDBS2006が使っているFramework
(ver1.1 ?)をインストールしてみるとか・・・

編集 削除
ねこ  2008-09-01 18:48:08  No: 31645  IP: 192.*.*.*

DingDongさん、こんにちは。
Windowsフォームアプリプログラムです。

私がヘルプをよく参照していなかったのがいけなったようです。
Borland.Delphi.Dllもコピーしなくては行けなかった様です。

一応、動作するようになりました。
皆さん、助言ありがとうございました。

編集 削除