• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VB2005EEプログラムのインストーラ作成時におけるInteropファイルについて)

VB2005EEプログラムのインストーラ作成時におけるInteropファイルについて

このQ&Aのポイント
  • VB2005EEのプログラムをインストーラ作成する際に、Interopファイルについての疑問です。
  • VB2005EEのプログラムをインストーラで配布する際、Interopファイルの扱いについて調査しました。
  • VB2005EEで作成したプログラムには、アプリケーションファイルの中にInteropやAxInteropファイルが含まれています。このファイルはインストールを回避する必要があるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#221368
noname#221368
回答No.2

>EEの発行でもやはり、アプリの固有フォルダにコピーされるだけなので、影響がない?  そこに自信が持てないのです。発行は相当に複雑な事をやっているので、インストール先のGlobal Assembly Cashに影響しないとは、私はいえません。 >Interopファイルをインストールしないように設定、エラーが発生  Interop.dllは、Excelなんかを動かすために必須なんですよ(腹立つ事に)。なので、その状態で、Interop.dllをExeと同一フォルダに手動コピーすれば、もしかすると動くかも知れません。SetUpプログラムのやっている事は、そういう事に近いのかな?と、想像しています。  開発マシンがOffice2002なので、Interop.dllは2002用のはずです。配布先は2003ですが、私の場合は動きました(SetUpインストール)。  とはいえ、正式な手順を踏んだに越したことはありません。そこで、発行を強引に配布先マシンで行った場合、考えられる事態は、次の4つです。 (1) 2002用のInterop.dllを、自動で2003用に置き換えてくれる。 (2) 何もしてくれない。プログラムがこけるだけ(Interop.dllが存在しても)。 (3) OfficeのVersionが違うという理由で、インストールを拒否される。 (4) 無警告で、配布先のOfficeインストール情報が破損する(プログラムが動くかどうかは不明)。  なので発行を試すなら、Testは自機でして下さい、という事になります。

q_ta
質問者

補足

早速のご回答、ほんとうにありがとうございます!! 私の場合もこの件をよく知らずに発行を利用し、配布先でインストールして使用してもらいましたが、特に異常なく動作しているようです。 (テストをしてくれている方のOffice2003のマシン1台のみです。) 後で考えると恐ろしいことですが...。 その後特にOfficeの動作異常等の話は聞いていませんが、配布先のOfficeインストール情報が破損してしまった場合、どういう事態が起こりうるのでしょうか? いろいろと質問してしまい、申し訳ありません。

その他の回答 (2)

noname#221368
noname#221368
回答No.3

 そうなんですか。Officeも正常に動くし、プログラムも正常動作する・・・。あり得る話だとは思います。  インストール情報の破損で、まっさきに思い浮かぶのはレジストリ情報です。レジストリの役割は色々ありますが、ふつうに使っている分には、(ほぼ)インストール時とアンインストール時にしか関係しません。  Windows3.1~XPを通して、じつはAppの必要DLLさえ全て押さえれば、手動での、Exe,DLLファイルのコピーインストールと削除アンインストールは可能です(あんまり薦めませんけど)。  なのでインストール情報が破損したとしても、Officeアンインストール時に「インストール情報が不完全だ」と文句を言われる程度かな?、とは思います。  この辺りは、技術情報も本当に複雑怪奇で、想像に過ぎませんけど・・・。

q_ta
質問者

お礼

いろいろと教えていただき、ほんとうにありがとうございます。 ほんとうにこのあたりは技術情報を見てもわからないことが多いですね。 このたびは貴重なお時間を割いていただき、ありがとうございました。

noname#221368
noname#221368
回答No.1

 技術資料の言っている事は、本当っぽいです(例えばPIAがVersion固有であるとか)。少し前、OfficeのVersion違いで苦労しました。  この時、技術資料の「Officeのインストール情報が破損する」などの事は知りませんでしたが、作成AppをSetUpプロジェクトからインストールしたので、結果として、だいじょうぶだったのかと、いま思いました。つまり再配布したわけですが、この時は、Interop.dllがAppの固有フォルダにローカルにコピーされるだけで済みました。ただしEEには、SetUpプロジェクトのテンプレートがないそうですね。Comunityからダウンロードできそうそうな気もしますが・・・。  可能性としては、発行を利用した場合、OfficeのVersionが違えば、自動で発行を拒否するようにも思えますが、testは自機で行う事をお薦めします。

q_ta
質問者

補足

ご回答ありがとうございます! やはりOfficeからのインストール以外はまずいわけですね。 EEの発行でもやはり、アプリの固有フォルダにコピーされるだけなので、影響がないのでしょうか? ちなみにEEの発行でもInteropファイルをインストールしないように設定できるのですが、試してみたところ、プログラムはエラーが発生し、動かなくなってしまいました。 Setupプロジェクトのテンプレートは検索してみましたが、見つけることはできませんでした。 EEの発行は確かに制限が多く、使いづらいですね。