参照設定またはコンポーネントの解放するには?

解決


原詩人  2005-11-07 23:14:13  No: 92470

MonthViewを使おうと参照設定で「MSCOMCT2.OCX」を読み込みました。
その後、コンポーネントで「Microsoft Windows CommonControls-2 6.0」
にチェックしたところ「この名前は既にあるモジュール、プロジェクト、オブジェクトライブラリで使われています」
と警告がでました。過去ログで「http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200406/04060121.txt
というのを見つけたので、ヘルプを見た結果、恐らく「MSCOMCT2.OCX」が
既に使われているのに、もう一度参照設定で読み込んだため起きた現象
だと推測しました。このコントロールを一度解放みたいな事をすれば
解決すると思いますが、そんなメニューがありませんでしたので、
解決できる方法を教えてください。


特攻隊長まるるう  2005-11-08 00:36:39  No: 92471

既に一度、参照設定しているなら、何度も参照する必要はありません。
…が、その場合は参照設定の項目にチェックが入っているから間違えない
と思います。
このエラーの場合、ユーザが指定した名称がかぶっている場合がほとんどです。
>Microsoft Windows CommonControls-2 6.0
だと MSComCtl2 でしょうか?そういった名前のモジュールなどを
自分で作っている場合、それの名称を変更しないと追加できません。


原詩人  2005-11-08 01:12:30  No: 92472

早速の回答ありがとうございます。
>このエラーの場合、ユーザが指定した名称がかぶっている場合がほとんどです。
確かにその可能性を考慮して、プログラム見渡しましたが、フォームは1個、標準モジュールも1個だけなので間違えようがありません。
グローバル、ローカル変数、関数等も見渡しましたが、そのような名前は
一切使っておりませんでした。

新規プロジェクトで同じ行動を取りましたが、やはり同じ現象が起こりました。
やはり原因は参照設定を2回読み込んだ事にあると思います。


特攻隊長まるるう  2005-11-08 01:23:32  No: 92473

>新規プロジェクトで同じ行動を取りましたが、やはり同じ現象が起こりました。
その時点でどっか変だね(^^;)開放しようにも参照してないと不可能でしょう?
デフォルトでそんな事にはなってないので『こちらでは再現できません』の部類
ですねぇ。まずは原因に迫れるような何かを見つけないとこちらからは何とも
言えません。

では、オブジェクトブラウザで『MSComCtl2』を検索してみて下さい。何も検索
されない場合はオブジェクトブラウザのライブラリが一覧表示されるコンボボックス
の項目を上から順に教えて下さい。
<すべてのライブラリ>
…以下のことです。


特攻隊長まるるう  2005-11-08 01:32:11  No: 92474

あ、ごめんなさい。もう一度質問文を読み返して分かりました。
>MonthViewを使おうと参照設定で「MSCOMCT2.OCX」を読み込みました。
>その後、コンポーネントで「Microsoft Windows CommonControls-2 6.0」
[参照設定]しないで下さい。OCX は[コンポーネントの追加]のみで使用します。


原詩人  2005-11-08 02:38:45  No: 92475

>[参照設定]しないで下さい。OCX は[コンポーネントの追加]のみで使用します。

新規で作成する分にはそうなんですが、「参照設定」してしまった後の
プロジェクトなので、その場合の解決方法が知りたいんですが・・・


原詩人  2005-11-08 02:41:52  No: 92476

すいません。ちょっと言葉足らずで誤解を招きそうなので追記します。

参照設定では「Microsoft Windows CommonControls-2 6.0」という項目は
ありませんので、当然チェックは外れている、というか出来ません。
コンポーネントでありますので、そちらをチェックして適用すると、
例のメッセージが表示されます。
で、参照設定を見ても該当するものにはチェックは入ってないので・・・
という堂々巡り状態です。


魔界の仮面弁士  2005-11-08 06:32:06  No: 92477

とりあえず、*.vbp ファイルをメモ帳で開いてみるとか。


特攻隊長まるるう  2005-11-08 18:07:08  No: 92478

>とりあえず、*.vbp ファイルをメモ帳で開いてみるとか。
ですね(^^;)。で『MSCOMCT2.OCX』を含む Reference
の行を1行丸々削除して保存です。


原詩人  2005-11-08 18:22:49  No: 92479

>『MSCOMCT2.OCX』を含む Reference
の行を1行丸々削除して保存です。

魔界の仮面弁士さん、特攻隊長まるるうさん、ありがとうございます。
言われたとおりで出来ました。
*.vbpってバイナリじゃなかったんですね、初めて知りました。
大変勉強になりました。


特攻隊長まるるう  2005-11-08 19:06:01  No: 92480

>*.vbpってバイナリじゃなかったんですね、初めて知りました。
そのレベルならもう一つの方法も知っておいた方が良いかもね。
1.新規プロジェクトを作成して保存
2.新規プロジェクトのフォルダに既存のプロジェクトで作成済みの
プロジェクトファイル以外のファイル(frm mdl bas等)をコピー
3.コピーしたファイルを新規プロジェクトに[既存のファイル]として
追加
4.既存プロジェクトをゴミ箱へ

プロジェクトファイルが壊れたこと前提で捨ててしまうわけです...(  _)_ぺたり


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加