.OCXが無くても .EXEを起動させるには?

解決


まゆこ  2003-05-06 18:33:25  No: 77865  IP: [192.*.*.*]

.OCXファイルについて調べています。

.OCXファイルの場所を変えたり、名前を変えてみたり(.OCXXなど)して.EXEを起動してエラーを確かめていたのですが、ふとしたタイミングで.OCXが無い状態で.EXEが正常に起動してしまいました。何度も確かめたのですが、.OCXはありませんでしたし、その.OCXは必要なものでした。
その後、.OCXを元の状態に戻して再度試みたのですが同じ現象が起こりません。

必要な.OCXが無い状態でも.EXEは正常に起動するのでしょうか?
起動するならばその方法を教えてきださい。

また、ビルドの際に.EXEに.OCXの情報を取り込むというようなことは出来ないですか?

編集 削除
なくてななくせ  2003-05-07 06:56:19  No: 77866  IP: [192.*.*.*]

>ビルドの際に.EXEに.OCXの情報を取り込むというようなことは出来ないですか?

ちょっと趣旨が違うかもしれませんが、VBが勝手にやってくれている
と思っていますが...。
ちなみに***.vbpファイルの中をみれば参照できるようにしたコントロール
のファイル(***.OCX)が格納されているのようですがこれを取得してみて
はどうですか?

ファイルが無いのにエラーが起きなかったのは、そのファイルへアクセスに
いく操作をしなかったか、キャッシュやどこかのメモリ上に残っていたのか
もしれませんね。
断定はできませんが..。

編集 削除
とおりすがり  2003-05-07 13:08:37  No: 77867  IP: [192.*.*.*]

おそらく、そのOCXはsystem32等にあり、それはレジストリ登録されていると思われます。
ですから、名前を変えて動作しているように見えて実は、system32等の処から呼ばれているという可能性があります。
dllやocxの呼び出し順番は、
1.現タスクの実行ファイルのあるディレクトリ
2.カレントディレクトリ
3.\Windows\System32 ディレクトリ
4.\Windows\System ディレクトリ
5.…
といった具合です。OSによって違いがありますので下記を参照してください。
http://homepage2.nifty.com/DSS/VCPP/DLL/dllsearch.htm

編集 削除
まゆこ  2003-05-08 17:39:39  No: 77868  IP: [192.*.*.*]

いろいろ参考になりました。
ありがとうございました。

また何かあったらよろしくお願いします。

編集 削除