問題タブ [oleview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
1686 参照

c++ - COM インターフェイス メソッド C++ にアクセスする

両方:

  • CLSID
  • IID

上記を指定し、以下を使用します。

  • CoCreateInstance()

上記の CLSID で指定されたクラスの単一の初期化されていないオブジェクトを返します。

C++ からインターフェイスのメソッドにアクセスするにはどうすればよいですか? それなし:

  • ATL
  • MFC
  • ただのC++

その後、 CreateInstance() を使用します

CreateInstance() を使用して問題が発生しました - 最後のパラメータ - ppv

oleview を使用すると、上記の IID の上に指定された IID のメソッドを次のように表示できます。

上記にアクセスするにはどうすればよいですか?例/ガイダンス - お願いします

よろしく

0 投票する
4 に答える
957 参照

dll - Oleviewエラー「タイプライブラリの読み込みエラー」?

タイプライブラリは、アプリケーションまたはダイナミックリンクライブラリ(DLL)によって公開されるクラス、インターフェイス、定数、およびプロシージャを宣言します。タイプライブラリは通常、プログラムファイル内のリソースです。拡張子が.tlbまたは.olbのスタンドアロンバイナリファイルにすることもできます。

したがって、一部のDLLは、TypeLibとして宣言されていなくてもインターフェイスを公開する可能性があります。

実際、oleviewからdllを開こうとすると、「エラー読み込みタイプライブラリ」というエラーメッセージが表示されます。

私の理解によると、DLLから公開されているインターフェイスがある場合は、oleviewで開く必要があります。そうでない場合は、公開されているインターフェイスや関数を使用できません。

インターフェイスを公開しているdllがあり、それでもOleviewで表示できない可能性。

0 投票する
3 に答える
10916 参照

.net - C#列挙型をCOM相互運用機能の呼び出し元に公開することは可能ですか?公開する場合は、どのように公開しますか?

COM相互運用機能を介して呼び出されるマネージドアセンブリがあります。VBScriptクライアント、Perlクライアントなどのように。

クラスはで飾られています

それからもちろん私はレガスムのことをします、そしてすべての方法はうまく働きます。

ただし、アセンブリには列挙型もあります。列挙値には、シンボリック名のCOMアプリケーションを使用したいと思います。

COM相互運用機能を介して列挙型を公開するにはどうすればよいですか?これらの属性を追加する必要がありますか?

次に、VBScriptでこれらのシンボリック名を参照するにはどうすればよいですか?OleViewに列挙型が表示されません。(私がすべきですか?)OleViewに他のすべてのタイプが表示されます。

0 投票する
1 に答える
318 参照

java - COM4jで使用するDirectShowインターフェイスのtypelib識別子を見つけるにはどうすればよいですか?

COM4jを使用して、Windows上のJavaから(FMJまたはJMFフレームワークを経由せずに)Webカメラと対話しようとしています。ただし、インターフェイスを構築するためのDirectShowのtypelib識別子が見つかりません。COM4jサイトでは、OleViewを使用してtypelibを見つけることを推奨していますが、そこでtypelibのリストを調べたところ、DirectShowインターフェイスを提供しているように見えるものを見つけることができませんでした。

0 投票する
4 に答える
33997 参照

windows - COM オブジェクトを探索/テストするためのツールはありますか?

Python (win32com) の COM オブジェクトを使用してプロセスを自動化しようとしていますが、期待した結果が得られません... 特定のプログラムを作成せずに COM オブジェクトを探索/テストするツールはありますか? つまり、たとえば COM オブジェクトをインスタンス化してそのメソッドを呼び出すことができるものはありますか?

(基本的に、予期しない結果が win32com のせいであるかどうかを調べようとしており、Visual Studio をインストールして C# アプリを作成することは避けたいと考えています)

0 投票する
1 に答える
640 参照

.net - REGASM /u を使用して COM [PrimaryInteropAssemblyName] typelib 値を削除できません

誰かが私を正しい方向に向けてくれることを願っていました。問題を明確にするために、いくつかの手順で問題をリストしました。

  1. regsvr32を使用して C++ DLL を COM に登録します。
  2. 次に、C++ DLL の/primary属性を指定してtlbimpを使用して、C# で使用できるアセンブリ ファイルを作成します。
  3. 次に、新しく生成されたアセンブリを GAC に登録します。
  4. C++ タイプ ライブラリに GACed アセンブリへの参照が含まれるように、生成されたアセンブリで regasm を呼び出します。

問題は、regasm /uを使用すると、「正常に登録解除されました」と表示されることです。しかし、OLEVIEW を使用して COM で typelib をチェックすると、GACed アセンブリへの PrimaryInterop 参照がまだ表示されます。

regasm /u /tlb も使用してみましたが、次のような警告が表示されます。

ここに画像の説明を入力

これは私を夢中にさせているので、助けてくれてありがとう;)

0 投票する
2 に答える
17269 参照

regsvr32 - iviewersのdllregisterserverが失敗しました

Oleviewを実行しようとすると、IViewer.dllのDllRegisterServerが失敗したというエラーが表示されます(スクリーンショットを投稿したかったのですが、10レピュテーション= pになるまで投稿できません)

Oleviewは実行されますが、msgが言うように、私がやりたいこととまったく同じインターフェースを見ることができません。

私は自分のiviewer.dllを見つけ、その上でzippy32を問題なく実行しました。だから私は何が起こっているのかわかりません。

0 投票する
2 に答える
728 参照

c# - インターフェイスなしでCOMイベントをレイトバインドする方法

3.5 C# アプリケーションでサード パーティの VB6 COM オブジェクトにレイト バインドする必要があります (現在のバージョンの依存関係を避けるため)。提供された dll は、通常どおり使用しようとするとエラーが発生するバグがあるため、ほとんどの非遅延バインド方法では使用できません。現在、非常にバージョン固有のカスタム VB6 ラッパーを使用していますが、遅延バインディングを使用してプロパティとメソッドにアクセスできることがわかりました。現在、イベントに遅延バインドしようとしていますが、必要なイベント シンクを作成するには、COM ラッパーのインターフェイスから継承する必要があると書かれています。ここにそのような記事があります。

それで、私の質問は、コンパイル時に dll を参照せずに遅延バインド イベント処理を実行できるかどうかです。

アップデート

VB6ラッパーで発生したエラーは次のとおりです(これはまだ積極的に更新されています)。

  • OleViewer では、

選択したアイテムを逆コンパイルできませんでした。タイプ ライブラリ/DLL のロード中にエラーが発生しました。TYPE_E_CANTLOADLIBRARY ($80029C4A)

  • Visual Studio では次のようになります。

COM 参照 "3rdPartyDLL" の依存関係を特定できませんでした。タイプ ライブラリ/DLL のロード中にエラーが発生しました。(HRESULT からの例外: 0x80029C4A (TYPE_E_CANTLOADLIBRARY))

0 投票する
2 に答える
1572 参照

.net - TLB を IDL に変換する

タイプ ライブラリ (.tlb) から idl ファイルを生成するコマンドライン ツールを知っている人はいますか? これを行う理由は、regasm から生成された列挙値のアンダースコアを取り除くためです。列挙型のアンダースコアの問題は、このブログで説明されています

http://blogs.artinsoft.net/mrojas/archive/2010/05/17/interop-remove-prefix-from-c-enums-for-com.aspx

OLEView が IDL ファイルを生成できることは知っていますが、自動ビルドに適合するソリューションを探しています。