2013-01-31 18 views
5

VB5製品をVB6にアップグレードし、VB6 IDEから実行可能ファイルを生成しました。 MSVBVM50.DLLがなければ正しく実行されません。それがないと、次のエラーが生成されます。VB6コンパイルされたアプリケーションでVB5 VMが必要なのはなぜですか?

Automation error - cannot find specified module. 

これはどうしてですか?

VB5 VMが必要なVB5にコンパイルされたコンポーネントDLLが存在する可能性はありますか?

答えて

2

あなたの提案は正しいです。 VB5ランタイムに依存するコンポーネント(DLL、OCX)を使用している場合は、VB5ランタイムなしでプログラムを実行することはできません。

VB5 VMを使用しているものを検索するには、参照先のDLLとコンポーネントを確認する必要があります。

4

VB6 IDEでは、[プロジェクト]> [コンポーネント]メニューに[コンポーネント]ダイアログが表示され、[プロジェクト|参照]に[参照]ダイアログが表示されます。

どのコンポーネントにチェックが入っているかを確認し、VB5バージョンであり、VB5バージョンでないことを確認します。多くの標準コントロールがVB6で更新されました。

特に、さまざまな「Microsoft windows Common Controls」のエントリは、ツールボックス内で視覚的に同一であるため、変更が最も目立たないものの一部です。

+0

短期間でVB5ランタイムを含めても問題ありませんか? – CJ7

+0

いいえこれを適切なコメントにするために、さらに文字を追加する必要があります。 –

+0

長期的に考えると、VB5からVB6のコンポーネントを交換してください。最新の(ほとんどの場合、まだかなり古くなっている)VB6コンポーネントは、より良く動作する傾向があり、非互換性が少なくなります。 – DaveInCaz

関連する問題