DOBON.NET どぼん!のVB道掲示板過去ログ

Re:新機能について解答編

どぼんさんレスありがとうございます。

>システム情報」のソフトウェアの環境-読み込み済みのモジュールあたりである程度なら調>べられるかもしれませんね。

調べてみます。

それと
>「WindowsSYSTEMのディレクトリにインストールされる予定」と「アプリケーションフォル>ダにインストールされる予定」のDLLとはどういうことでしょうか?この2つはどのように >違うのでしょうか?見分ける方法はあるのでしょうか?

これは、まず Visual Studio Installerプロジェクト から Visual Basic インストーラ を使って、インストーラを作成したときに、プロジェクトエクスプローラ のファイルシステム をクリックすると、Windowsシステムフォルダ・アプリケーションフォルダ・ユーザ[スタート]メニュー・ユーザのディスクトップ 以上4つのフォルダを自動で作っています。
私の場合、OCX・DLLファイルは、 Windowsシステムフォルダにvb5db.dll,scrrun.dll,・・・・
が入っており、アプリケーションのフォルダにもactbar.ocx,dao360.dll,tdbgpp.dll,・・・・などのファイルが自動で入っています。

つまりここの部分です。ここのvb5db.dll,scrrun.dll,・・・・は依存関係で"IsolateTo","SharedLegacyFile"の設定を変更しても正常に動きます。
しかし、アプリケーションのフォルダにあるactbar.ocx,dao360.dll,tdbgpp.dllなどの
ファイル(多分このOCX,DLLは文化オリエント製のコントロールがらみ)を変更すると ActiveX にエラーが出るみたいでおかしな動きをします。
また、MSMファイルは自動でWindowsシステムファイルへインストールされるので
これも、"IsolateTo"で変更しても正常に動きます。

そうするとインストール時に依存関係の中のファイルがすべてアプリケーションフォルダにインストールされると言うわけです。
しかし、このときに,本来Windowsシステムフォルダにあるvb5db.dll,scrrun.dll,・・・・
はどういう動きをしているのか?ひょっとして、インストール時に両方にインストールしているのではないだろうか?また、MSMファイルも同様になっているのならば、アプリケーションフォルダインストールされた vb5db.dll,scrrun.dll・・・・MSMファイルは実は機能していないのではないか?
などと考えてしまい。どうしても確認してみたくなったのです。

私自身あまり説明が下手なのですがおわかりいただけたでしょうか?

DOBON.NET | プログラミング道 | プログラミング掲示板