VB2010 配布Exe用外部DLLは何処に置けば…

解決


まさお  2012-08-06 14:41:51  No: 147730  IP: 192.*.*.*

まさお と申します。  宜しくお願い致します。

  WinXP Pro SP3    VB2010 Express SP1 です。

  非常に基本的な質問で大変申し訳ないのですが、追加した外部DLLはExeファイル用としては何処に置けば良いのでしょうか?

  WWWからあるDLLをダウンロードしました。※A
  開発中はそのDLLをとりあえず...\bin\Debug\ に置いて開発は完了しました。

  開発完了したExeをクライアントに配布したいのですが※AのDLLはクライアント環境では何処に置けば良いのでしょうか?
  C:\WINDOWS\system32\ ではNGであることは確認しました。
      ※当然ながら C:\WINDOWS\system32\ にPathは通っています。

  Exeファイルと同じフォルダに置けばOKは確認済みですが、このDLLは今後のExeファイルでも使用したいので共用にしたいと考えています。


以上、宜しくお願い致します。

編集 削除
YuO  2012-08-06 17:31:22  No: 147731  IP: 192.*.*.*

プライベートディレクトリ (つまりは実行ファイルのあるディレクトリ) に置くのが原則です。
厳密な名前がついていればGACにおけなくもないですが……。

編集 削除
オショウ  2012-08-07 11:05:09  No: 147732  IP: 192.*.*.*

そのDLLが、Win32 DLL なら、環境変数のPATHに従って検索・ロードされる
ので、PATHに新たにDLLの在り処を追加するか、EXEと同じフォルダにする
のがよいかと。

.NETで作成されたDLLなら、参照設定がローカルフォルダならそのままにな
ると思いますが・・・

※  DLL と言っても、いろんな形式があるので、それが解らないと正確な
    回答はできません。

以上。参考まで

編集 削除
まさお  2012-08-07 12:52:12  No: 147733  IP: 192.*.*.*

YuO さん、オショウ さん、ありがとうございました。

> つまりは実行ファイルのあるディレクトリに置くのが原則です。

> EXEと同じフォルダにするのがよいかと。

  了解致しました。
  「GAC」,「DLL と言っても、いろんな形式がある」等々、今の私では勉強不足で理解できない点が多々有り、素直にExeと同じフォルダに置くことにします。
  もっとVB.net に慣れてこの辺りのことが理解できるようになってから再度調べるようにしてみます。


アドバイスありがとうございました。
「解決」とさせて戴きます。

編集 削除