VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 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)について調べてみてください。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -