![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
いつもお世話になってます。
VB6.0で開発を行っております。VBのDLLを作成しております。
そこで、お聞きしたいのが、DLLプロジェクトのプロパティの中に、コンポーネントという項があるのですが、
その中のバージョンの互換性について教えていただきたいと思っております。
まず、根本的にこれは設定をするとどういうことになるのでしょうか?バージョンの互換性という意味がよくわからないので、教えていただきたいと思います。
それと、「互換なし」、「プロジェクト互換」、「バイナリ互換」はどう使い分けるものなのでしょうか?
ヘルプを見てもよくわかなかったので、教えていただきたいと思っております。
何卒よろしくお願い申し上げます。
A 回答 (1件)
- 最新から表示
- 回答順に表示
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_06.png?5a7ff87)
No.1
- 回答日時:
こんにちは。
ASPでActiveX.DLLを作るので多少は分かります。
作成したDLLを配布する時にレジストリに登録するのですが、
DLLに改変があった場合にレジストリの再登録が要るかに関わります。
具体的にはクラスID等がレジストリに登録されますが、
DLLを再コンパイルする時にクラスID等を振り直すかどうかの指定のようです。
バインドする方のプロジェクト(COMクライアント)の参照設定のやり直しにも関わります。
[互換なし]
再コンパイルのたびにクラスID等は全て変更されます。
[プロジェクト互換]
クラスIDとライブラリIDは変更せず、インタフェースIDのみが変更されます。
COMクライアントで「ActiveXコントロールのアップグレード」にチェックがあれば、プロジェクトを開く時に最新の参照設定情報が読み込まれます。
[バイナリ互換]
3種類とも変更されません。
従ってCOMクライアントの変更が要らないことになります。
但し、
1.実装済みメソッドの戻り値の型を変更できない。
2.引数の型及び個数を変更できない。
3.メソッドを追加した場合、COMクライアントの再コンパイルが必要。(CreateObjectは別)
の制限があります。
これを知るのに役に立ったのは「VisualBasicMagazine」の2000年8月号でした。
バックナンバーを探して見つかれば詳しい記事があります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Vba 互換モードでのAppActiveについて教えてください 2 2022/06/27 18:47
- その他(プログラミング・Web制作) IT初心者です 仕事で、vb.netで作成されたdllをvbaで呼び出すプログラムを作成しろと言われ 1 2023/03/27 08:22
- Windows 10 SONYの音楽ソフト「x-アプリ」について 3 2023/01/29 19:09
- WordPress(ワードプレス) ワードプレスのバージョン 2 2022/06/12 09:32
- プリンタ・スキャナー 最近のインクジェットプリンターの互換インクカートリッジは販売されていない場合があるのでしょうか? 7 2022/10/05 14:48
- デジタルカメラ 三脚をアルカスイス互換にしたい 1 2023/03/18 13:32
- プリンタ・スキャナー ブラザーのプリンターで互換インクが使えるものは? 3 2022/12/02 15:25
- その他(自然科学) LEDの接続について 2 2022/09/16 22:18
- Excel(エクセル) 「Excelのオプション」の「ユーザーインターフェイスのオプション」の設定値をVBAで取得したい 1 2022/07/31 23:49
- その他(恋愛相談) LINEブロックについて 1 2022/08/20 20:32
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
c++でのヘッダーファイルの循環...
-
「IOException は対応する try ...
-
JavaでのAPIの覚え方ってみさな...
-
「ラッパークラス」の存在意義...
-
Javaのインスタンス化の構文の...
-
javaの「型」がよくわかりません。
-
エンティティの実装方法について
-
オブジェクト指向の特徴
-
Strutsのバージョンアップによ...
-
メソッドの引数にクラス名を渡す
-
絶対パス ⇒ フォルダかファイル...
-
Javaのインターフェイスの意味
-
オブジェクト指向言語で多態性...
-
インターフェースとサブクラス...
-
ComparableとComparatorの違い...
-
「インターフェイス」って何の...
-
JAVAでCPUなどのシリアル番...
-
サブクラス型オブジェクトをス...
-
Java StringBuilderクラスについて
-
VB DLLプロジェクトについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
interface,extend,implementの...
-
「ラッパークラス」の存在意義...
-
(vba)他のアプリケーションの右...
-
抽象クラスをJUNITでテストする...
-
オーバーライドとラッパーの違い
-
C# 「データが失なわれる可能性...
-
【C#】クラスのコンストラクタ...
-
JTextFieldの入力制限
-
c++でのヘッダーファイルの循環...
-
vb.net 自作プロパティの削除に...
-
「継承されたメソッドの可視性...
-
ASP.NETでの共通コードの書き方...
-
Javaのインスタンス化の構文の...
-
Javaで下線
-
メソッドの引数にクラス名を渡す
-
VB DLLプロジェクトについて
-
C#からDLLを呼びたいのですが・...
-
インターフェース型の使い方が...
-
委譲って何ですか?
-
C# 継承の問題で programに示さ...
おすすめ情報