C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

MDACとADOのバージョンについて


(過去ログ 3 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■3011 / inTopicNo.1)  MDACとADOのバージョンについて
  
□投稿者/ ひろ 二等兵(6回)-(2006/04/04(Tue) 10:59:54)

分類:[その他の質問] 


分類:[その他の質問] 

いつも拝見させて頂いています。
ひろと申します。

今日は、MDACとADOのバージョンについて質問させてください。

現在VB.NETで開発をしてる端末が2台あります。
VB.NETでプロジェクトの参照設定に「ADODB.dll」を追加したのですが、
「ADODB.dll」のバージョンが各端末で違い「2.7」と「2.5」になります。

2台ともMDACのバージョンは「MDAC 2.8 SP1 ON WINDOWS XP SP2」です。
MDACを更新するとADOのバージョンも更新されると思っていたのですが、
MDAC以外にADOのバージョンが更新される方法はあるのでしょうか?

※ADODB.dllのバージョンは、VB.NETで参照設定に追加後、
bin配下にコピーされた「ADODB.dll」にマウスポインタを持って行った際に
表示されたバージョンで確認しました。

どなたかご存知の方が居られましたら教えて頂けないでしょうか。
宜しくお願いします。

【環境】
WindowsXP SP2
.NET Framework 1.1

0
引用返信 編集キー/
■3013 / inTopicNo.2)  Re[1]: MDACとADOのバージョンについて
□投稿者/ 魔界の仮面弁士 曹長(82回)-(2006/04/04(Tue) 11:46:59)

分類:[その他の質問] 

> VB.NETでプロジェクトの参照設定に「ADODB.dll」を追加したのですが、
ADO の本体は、
 C:\Program Files\Common Files\System\ADO\MSADO15.DLL
です。ADODB.DLL は、それを呼ぶための相互運用アセンブリですね。

複数バージョンの MDAC がインストールされている場合には、合わせて
 C:\Program Files\Common Files\System\ADO\MSADO20.TLB
 C:\Program Files\Common Files\System\ADO\MSADO21.TLB
 C:\Program Files\Common Files\System\ADO\MSADO25.TLB
 C:\Program Files\Common Files\System\ADO\MSADO26.TLB
 C:\Program Files\Common Files\System\ADO\MSADO27.TLB
も配置される場合がありますが、これらは互換性維持のために用意されて
いるだけで、実体が MSADO15.DLL である事には変わりありません。


> 「ADODB.dll」のバージョンが各端末で違い「2.7」と「2.5」になります。
プライマリ相互運用アセンブリの
C:\Program Files\Microsoft.NET\Primary Interop Assemblies\adodb.dll
の存在、およびそのバージョンも確認してみてください。
また、参照設定の .NET タブに ADODB が現れているかもチェックしてください。


> MDACを更新するとADOのバージョンも更新されると思っていたのですが、
> MDAC以外にADOのバージョンが更新される方法はあるのでしょうか?
MDAC や .NET Framework SDK には、.NET用の相互運用アセンブリは
含まれていなかったと思います。
(Visual Studio.NET や、OfficeXP PIA には同梱されています)

で、PIAが無い場合、COM版のタイプライブラリを利用する事になりますが、
この場合、Visual Studioが自動的に相互運用アセンブリが生成しますので、
この時点で、どのバージョンのタイプライブラリを参照設定したかで、
生成される DLL のバージョンが決定されるのではないでしょうか。

0
引用返信 編集キー/
■3017 / inTopicNo.3)  Re[2]: MDACとADOのバージョンについて
□投稿者/ ひろ 二等兵(7回)-(2006/04/04(Tue) 16:24:22)

分類:[その他の質問] 

魔界の仮面弁士様 返信ありがとうございました。

> MDAC や .NET Framework SDK には、.NET用の相互運用アセンブリは
> 含まれていなかったと思います。
> (Visual Studio.NET や、OfficeXP PIA には同梱されています)
>
> で、PIAが無い場合、COM版のタイプライブラリを利用する事になりますが、
> この場合、Visual Studioが自動的に相互運用アセンブリが生成しますので、
> この時点で、どのバージョンのタイプライブラリを参照設定したかで、
> 生成される DLL のバージョンが決定されるのではないでしょうか。


ご指摘された通り、COM版のタイプライブラリを利用しており、
参照設定する際にどのバージョンのタイプライブラリを選択したかで、
生成される DLL のバージョンが決定されておりました。

勉強不足で初歩的な質問をしてしまい申し訳ありません。
今回色々なアドバイスを頂き大変勉強になりました。
ありがとうございました。







解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -