投稿日 | : 2005/01/27(Thu) 12:37 |
投稿者 | : 魔界の仮面弁士 |
Eメール | : |
URL | : |
タイトル | : Re: VBアプリの必須ファイル |
> VBで作成したアプリケーションに必ず含まれるファイルってあるんでしょうか?
一番重要なのは、『そのアプリ自体のexe』でしょうね。
次に、それを利用するためのランタイム「MSVBVM60.DLL」が、最低限必要です。(VB6の場合)
また、古い環境(Win95など)では、上記とは別に、OLE関係のアップデート(Oleaut32.dll等)が
必要とされる場合があります。最近の環境は更新不要ですけれども。
なお、VB製のexeかどうかは、そのexeを「Dependency Walker」というツールにかけて、
内部で MSVBVM60.DLL を呼び出しているかを調べれば確認できます。
hhttp://www.dependencywalker.com/
# Dependency Walkerは、Microsoft Platform SDK等にも付属しています。
さらに実際には、MSVBVM60.DLL だけだと、メッセージ等が英語版のような動作に
なってしまうので、日本語を表示するためのサテライトDLLとして、「VB6JP.DLL」が
インストールされている事が多いと思います。(ただ、VB6JP.DLLは必須ではありません)
もちろん、VB製exe内で利用しているコンポーネント(ADOとか、RichTextBoxとか)があれば、
それらに対応したDLLやOCX等が必要になりますが、このあたりは exe 次第でしょうね。
VBが必要としているファイルについては、VB6のヘルプの
[Visual Basic ドキュメント]
+[Visual Basic の使用方法]
+[プログラミング ガイド]
+[Visual Basic を使ってできること]
+[作成したアプリケーションの配布]
+[セットアップ ツールキット]
+[配布するファイル]
あたりに書かれていますので、よく目を通しておいてください。
ただ、ランタイムがインストールされていたからといって、既存のVBアプリが
インストール済みであるという証拠にはなりませんよ。
> これからVBで作成したアプリケーションをインストールするにあたり
> インストール先のPCに、既存のVBシステムがあるかどうかを調べたいのです。
市販の製品の中にも、VB6で作られた物はありますよ。
(以前購入したSonyのDVD-RW製品に付属していたライティングソフトが、VB6製でした)
ただ、「ディストリビューション ウィザード」や「VisualStudio Installer」などを使って
インストール作業を行えば、既存のDLLが無い(もしくは古い)時に、自動的に更新作業を
行ってくれますから、あえて自分で調べる必要は無いかと思いますよ。
もし、手動でセットアップ作業を行いたいのであれば、新しいバージョンのDLLを、
古いバージョンのDLLで置き換えないように注意してください。また、ActiveX関係は、
dllのコピーするだけでは動作しませんので、レジストリへの登録も必要ですよね。
> (配布するアプリと他のアプリをできるだけ共存させたくないので…)
OS自身が持っているアプリにも、VC製、VB製、FoxPro製のコンポーネントなどが
含まれている事があるので、完全に排他させるのは難しいかも。
もし、異なるDLLバージョンのアプリを共存させたいという事であれば、
サイドバイサイド(Side-by-side)について調べてみてください。