問題タブ [com]
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.
c++ - IHTMLElement イベント ハンドラーでイベント引数を取得できない
IHTMLElement インスタンスにコールバックを追加しましたが、IDispatch::Invoke がイベントに対して呼び出されると、引数はありません (つまり、pDispParams->cArgs と pDispParams->cNamedArgs は常に 0 です)。たとえば、onmouseup イベントのコールバックを追加します。私が知る限り、このイベントのコールバックは MouseEvent オブジェクトを受け取るはずです。あれは正しいですか?もしそうなら、これが確実に起こるようにするために私は何をする必要がありますか?
これは、Windows XP SP2 で IE 6 sp2 (またはそれ以上) の MSHTML を使用しています。
asp.net - 従来の ASP サイトと .NET 2.0 の混在に関するアドバイス
PayPal の PayFlow 製品を使用するための e コマース アプリケーションの更新を任されたところです。このサイトは、COM コンポーネントであるクレジット カード処理部分を除いて、もともと従来の ASP で作成されていました。
私たちの計画は、COM コンポーネントを .NET 2.0 コンポーネントに置き換えることです。乗船する前に、ヒントや落とし穴などを探しています。
c++ - 最適な時間で _variant_t から char* を取得する
これが私がスピードアップしたいコードです。ADO レコードセットから値を取得し、char* に変換しています。しかし、これは遅いです。_bstr_t の作成をスキップできますか?
com - タイプ ライブラリに IDL 列挙が表示されない
MS ATL ライブラリを使用して記述された COM オブジェクトがあります。IDL で多数の列挙型を宣言しましたが、MS COM オブジェクト ビューア ツールを使用してタイプ ライブラリを表示すると、列挙型が表示されません。問題は、欠落している列挙型が実際にはどの COM メソッドによってもパラメーターとして使用されていないことです。これらの列挙型を強制的に表示するにはどうすればよいですか?
たとえば、IDL では次のようになります。
問題の列挙型はどのメソッドでも直接使用されていませんが、オブジェクトを使用するすべての人にとって有用ですが、エクスポートすることはできません。
誰もこれを見たことがありますか?
c# - ネイティブの win32 アプリケーションから呼び出されている C# COM アセンブリをデバッグするにはどうすればよいですか?
Delphi 7 (iow、ネイティブ win32、.net ではない) アプリケーションから COM 経由で呼び出される C# アセンブリを開発しています。
これまでのところ、うまくいくようです。TLB ファイルをエクスポートし、それを Delphi プロジェクトにインポートしました。これで、C# オブジェクトを作成し、その関数を呼び出すことができます。
これは素晴らしいことですが、すぐにVisual Studio を使用して、実行中の C# コードをデバッグしたいと思うようになります。ブレークポイントの設定、コードのステップ実行、その他すべて。
COM オブジェクトが作成された後に Delphi コードを壊そうとしましたが、VS がアタッチするプロセスを探しましたが、見つかりません。
これを行うためにVS2008を設定する方法はありますか? f5 を押して VS に Delphi 実行可能ファイルを起動させ、C# コードが呼び出されるのを待ってから、自分自身をそれにアタッチできるようにしたいのですが、手動でプロセスにアタッチすることもできると思います。
MessageBox.Show などで間に合わせる必要があるとは言わないでください。
c# - .NET を使用して COM コンポーネントを UAC 昇格させる方法
を呼び出して C++ で記述された COM オブジェクトを昇格させる方法
に関する記事を見つけましたCoCreateInstanceAsAdmin
。しかし、私が見つけたり実行したりできなかったのは、.NET (c#) アプリケーションのコンポーネントを COM オブジェクトとして実装し、そのオブジェクトを呼び出して UAC 昇格が必要なタスクを実行する方法です。MSDN では、これを管理 COM オブジェクト モデルとして文書化しています。
アプリケーション(または別のアプリ)を管理者として起動し、別のプロセスでタスクを実行することが可能であり、非常に簡単であることを認識しています(たとえば、Daniel Moth からの投稿を参照してください。しかし、私が探しているのは方法です昇格されていない同じ .NET 実行可能ファイル内からすべてを実行する. そうすることで、もちろん新しいプロセスで COM オブジェクトが生成されますが、透過的なマーシャリングのおかげで、.NET COM オブジェクトの呼び出し元は (あまりにもかなり)それを認識しています。
API を使用して、C# プロジェクトから C# で記述された COM オブジェクトをインスタンス化する方法についてのアイデアはCoCreateInstanceAsAdmin
非常に役立ちます。そのため、C# で COM オブジェクトを作成する方法を学びたいと思っています。COM オブジェクトは、COM 昇格 API を介して C# から呼び出すことができます。
昇格した COM オブジェクトが同じプロセスで実行されなくてもかまいません。アプリケーション全体を昇格させて起動する必要はありません。コードを実行するCOMオブジェクトを昇格させたいだけです。行に沿って何かを書くことができれば:
次に、メインアプリケーションを呼び出しElevatedClass
を通じてインスタンス化しCoCreateInstanceAsAdmin
ます。でも、もしかしたら夢を見ているだけかもしれません。
.net - STAとMTAについて教えてください。
STA と MTA についてご自身の言葉で説明していただけますか?
また、アパートメント スレッドとは何ですか。それは COM のみに関連するものですか? もしそうなら、なぜですか?
com - OLEオートメーションのクラスライブラリを作成するにはどうすればよいですか?
私はExcelアドインを持っており、非常に多くのクラスモジュールを追加しているため、非常にかさばっています。MS Officeスイートの他のアプリで再利用できるように、タイプライブラリまたはCOMパッケージに変換したいと思います。
アドインをクラスライブラリプロジェクトとしてVisualStudioに移植しましたが、ExcelAutomationはコンパイルされた.dllファイル内のクラスを認識しません。直感的には、コードにマニフェストやインターフェイスなどが必要になると思います。
OLEオートメーションで使用するクラスのメソッドとプロパティを公開するには、何を知っておく必要がありますか?
com - Windows Vista で動作する IThumbnailProvider を作成する方法
MSDN で指定されているインターフェイスに従って、サムネイル プロバイダーを作成しました。ただし、Vista が実際に呼び出す方法で登録する方法を理解できませんでした。Vista で動作するサムネイル プロバイダを入手した人はいますか? サンプル コードまたはリンクは特に役立ちます。
vb.net - COMコンポーネント参照をVB.NETプロジェクトに追加する際の問題
vb.net(2008 Express)プロジェクトに追加しようとしているサードパーティのCOMdllがあります。dllをC:\ WINDOWS \ system32 \に置き、「zippy32vxncom.dll」に登録しました。[プロジェクト]>[参照の追加]に移動して[COM]タブに移動すると、使用可能なコンポーネント/ライブラリのリストに表示されます。しかし、ライブラリを選択して[OK]をクリックすると、VisualStudioから「「vxncom4.0ライブラリ」への参照を追加できませんでした。ActiveXタイプライブラリ「C:\ WINDOWS \ system32\vxncom.dll」を登録できませんでした」というメッセージが表示されます。
私がこれを行っているプロジェクトは、dllを配布する人々によって提供された例です。新しい(空白の)vb.netプロジェクトを開始しても、コンポーネントを追加できません。
更新1:
問題のdllで依存関係ウォーカーを実行しました。エラーログに表示される内容は次のとおりです。
エラー:暗黙的に依存するモジュールにエクスポート機能がないため、少なくとも1つのモジュールに未解決のインポートがあります。
問題のモジュールはlibeay32.dllのようですが、C:\ WINDOWS\system32に既に存在します。
更新2:
私はopensslサイトにアクセスし、インストーラーをダウンロードして使用し、libeay32.dllを更新しました。vxncom.dllで依存関係ウォーカーを再度実行しましたが、エラーは発生しませんでした。Visual Studioに戻りましたが、それでも参照を追加したくありませんでした。以前とまったく同じエラー。