お世話になります。
当方の環境はWinXP SP2,VB2005Proです。
現在作成中のアプリで、とあるCOMコンポーネントを使っているのですが、
どうやら そのOCXが自由配布は出来ないようで、依頼元から
「OCXがインストールされている場合のみ、それを使用する機能を
生かしてほしい」
と言われました。
依頼元曰く「たぶんコンポーネントを参照設定せずにコーディング
しないといけないと思う」との事なのですが、それは可能なのでしょうか?
また、可能であれば、方法(または方針)を教えていただけると有難いです。
(もしかしてOCXと処理を完全に分離してDLL化しないとダメ?)
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
参照設定せずにコーディングすることは可能です。
ただし、その OCX が提供するクラスのインスタンスを
Dim a As XXX
や
Dim b As XXX.YYY
といった形で宣言しているところは全て
Dim a As Object
Dim b As Object
のように As Object で宣言しなければなりません。
また、参照設定しているときにはコンパイルエラーになっていたコーディングミス ( 例えば、メソッド名やプロパティ名の間違い ) が、コンパイル時にはエラーにならず、実行時にエラーになるので注意が必要です。
この回答への補足
補足というか自己レスで申し訳ありません。
結局、OCXをラップしてDLL化する方向で開発を行いまして、何とか想定どおりの
動作を行うことが出来るようになったようです。
恐れ入りますが、ここで この件は打ち切りとさせて頂きます。
お騒がせしました。
(余談)
しかし、CreateDelegateとかEventInfo.AddEventHandlerとかの詳細は
なかなか無いですね…結局英語の掲示板とかを眺める事になってしまいました。
遅くなりましたが、回答ありがとうございます。
インスタンス生成時に、実際にクラス名を割り当てる感じですね。
ただ、申し訳ありません、言い忘れていたのですが、
コーディング規約として「Option Strict On」の状態でコーディング
しなければいけない事になっているのですが、その場合でも
大丈夫なのでしょうか?
あと、そのクラス名自体を どうやって認識させるのかも気になるところなのですが……
System.Reflection.Assembly.LoadFromってOCXでも大丈夫なんでしょうか?
(Reflection自体が、今のところ調べても混乱状態なのですが(汗))
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) プログラムの起動、利用について、使用期間を設定する方法 3 2023/08/06 21:03
- その他(プログラミング・Web制作) IT初心者です 仕事で、vb.netで作成されたdllをvbaで呼び出すプログラムを作成しろと言われ 1 2023/03/27 08:22
- アプリ PCでAndroidアプリを実行 BlueStacks AppPlayerが良い? 2 2022/05/10 10:36
- WordPress(ワードプレス) Wordpress 複数プラグインの不具合? 1 2022/10/09 21:52
- アプリ Webやアプリの制限が可能なWindowsアプリケーション 4 2022/11/10 12:13
- LINE ラインと類似したサービスは? 4 2023/03/21 20:05
- その他(IT・Webサービス) ホームページにカウント数を表示する 2 2022/10/28 10:37
- VPN フリー wi-fi は安全ですか 自宅での wi-fi VPNを使用したら良い? 2 2022/05/31 04:12
- 哲学 物語における「魔法」は「実現可能性」というくびきがなく、作者がそれ故に恣意的に設定を決めることができ 2 2022/08/20 17:04
- ソフトウェア パソコンの買い替え時、マイクロソフトでアカウントの変更(?)は? 2 2022/05/13 02:59
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
End Sub が必要です。
-
Excel VABについて 下記記述が...
-
typedef による2重定義
-
C2065: 'EnumDisplayDevices' :...
-
intel fortranのエラーで困って...
-
43:syntax error at end of input
-
pythonの条件分岐(if)
-
Excel・Word リサーチ機能を無...
-
UserForm1.Showでエラーになり...
-
Excel マクロ VBA プロシー...
-
合計3TBのデータのハッシュ値を...
-
特定のPCだけ動作しないVBAマク...
-
エクセルで特定の列が0表示の場...
-
メッセージボックスのOKボタ...
-
配列数式の解除
-
VBAでfunctionを利用しようとし...
-
教えて下さい
-
マクロの連続実行
-
一つのTeratermのマクロで複数...
-
TERA TERMを隠す方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
End Sub が必要です。
-
pythonの条件分岐(if)
-
Excel VABについて 下記記述が...
-
43:syntax error at end of input
-
フォートランのエラーについて...
-
intel fortranのエラーで困って...
-
他クラスからForm1内コントロル...
-
Excel VBA: UserForm.Show で実...
-
AccessVBAでVLookupを使いたい
-
対応する関数ヘッダーがありません
-
VB2005でOCXを動的に呼び出すに...
-
C# IEnumerable が IEnumerable...
-
ラズパイ上の、pythonのエラー...
-
コンパイルで未定義のシンボル
-
select関数の使用方法について
-
HEW3とBorlandC++でクラス定義...
-
構造体のポインタ参照
-
VB.NETのStructureの使い方を教...
-
waveOutProc関数での定義
-
フォートラン(fortran)のエラー...
おすすめ情報