OCXのクラスIDを変えるには?

解決


ミレリュード  2003-06-24 22:37:38  No: 51590  IP: [192.*.*.*]

現在、Microsoft Visual C++ 6.0で、OCXを作成するプロジェクトをビルドしています。

既存のプロジェクトをもとに、プロジェクトの設定(リンク、インクルード等)はそのままで、クラスIDだけを変えてOCXを作成したいのですが、どうすれば可能でしょうか?

*.odlファイルにクラスIDが書かれていますが、ここを書き換えるだけで済むものなのでしょうか?

以上、おわかりになる方がいらっしゃいましたら、よろしくお願いいたします。

編集 削除
岡田 之仁  2003-06-25 07:39:46  No: 51591  IP: [192.*.*.*]

クラスIDと表現されているのは、GUIDのことだと思いますが、
他の既に登録のあるものと重なってはいけないので、新規に
GUIDを生成する、GUIDGEN.EXEで、新たに取得し直して変更
すれば良かったと思います。

ご確認下さい。

以上。

編集 削除
ミレリュード  2003-06-25 14:19:28  No: 51592  IP: [192.*.*.*]

岡田 之仁さん、回答ありがとうございます!今回、GUIDGEN.EXEを初めて知りました。こういう掲示板に書いて、回答をもらったのは始めてなんですが、嬉しいものですね!

上記の問題ですが、職場の先輩の助言などもあり、結局、教えていただいた方法とは別の方法で解決しました。

その方法とは、
新規にOCX用プロジェクトを作成し、プロジェクト設定(リンク等)を既存のプロジェクトに合わせて設定し直し、ソースファイルを既存プロジェクトから差し替えました。その差し替えたファイルにかかれたGUIDは、新規プロジェクトで自動設定されたGUIDに変更しました。
その結果、正常に動くと思われるOCXができました。

どうもありがとうございました!

編集 削除
岡田 之仁  2003-06-25 16:57:16  No: 51593  IP: [192.*.*.*]

私も新規プロジェクトを作成し、ソースの引越しを行い解決
していました。
が、よく引越し手順の途中で間違いがあり・・・動かなくな
ったことがありましたので、GUIDをじかに変更する方が安全
と思い、その方法を記述しました。

何はともあれ、良かった良かった・・・

以上。

編集 削除