最適な方法は何ですか? .NETコンポーネント(.NET 3.5で書かれたクラス)をCOMにラップし、Win32でインスタンス化しますか?コンポーネントにはイベントがあるため、Win32 APIアプリケーションへのコンポーネント駆動型コールバックをサポートする必要があります。純粋なWin32 APIアプリケーション(フレームワークなし)、.NETコンポーネントへのアクセスが必要
2
A
答えて
1
あなたの仕様を満たす唯一のソリューションはCOMです。
1
あなたの好みと.NETコンポーネントの設定方法によって異なります。
COMでそれをラップすると、うまく動作し、通常は素晴らしいオブジェクトベースのインターフェイスが得られます。また、インターフェイスが複雑な場合は、タイプライブラリが得られます。
単純なインターフェイスを持つAPIの場合、通常はC++/CLIでラッパーを作成することをお勧めします。ラッパーは.NETコンポーネントに直接アクセスでき、__declspec(dllexport)を使用してラッパー関数を簡単にエクスポートできます。 COMを設定するよりも、このタイプのラッパーをセットアップする方が早い場合があります。ここで
あなたは便利かもしれないリンクのカップルです:
関連する問題
- 1. ツールチップが必要[純粋なjavascript]
- 2. 純粋なas3アプリケーションのSoftKeyboardType
- 3. 純粋なC#と.NETフレームワークでアナグラムジェネレータを書く方法
- 4. ASP.NETで純粋なJavascriptアプリケーション
- 5. 変換が必要な不変のデータを持つ純粋な汎用のReactコンポーネントの作成方法
- 6. "純粋な" IDispatchインターフェイスにはプロキシ/スタブDLLが必要ですか?
- 7. 純粋なHaskellコードにはスレッドプールが必要ですか?
- 8. MVCを使用しない純粋なASP.NET Web APIサービスでは、Area.RegisterAllAreas()のAreaRegistration.RegisterAllAreas()がまだ必要ですか?
- 9. 純粋なJavascriptでの要素座標
- 10. 単純な3列の純粋なCSSレイアウトはありますか?次のことを必要としない
- 11. Springフレームワークで純粋なaspectJを使用したい
- 12. .NET単純なアプリケーションのアップデートメカニズム
- 13. .NETで<4の単純なスレッドセーフリストオブジェクトが必要です
- 14. Win32アプリケーションとIBM RDZ/Eclipseからのメインフレームファイルへのコヒーレントなアクセス?
- 15. 純粋なangularjsスクロールイベントリスナー
- 16. 純粋なCSSスライダー
- 17. 純粋なPHPトレントクライアント?
- 18. 純粋なCSSリニアグラデーションボーダー
- 19. 純粋な関数が純粋な意味を返すのは何ですか?
- 20. 純粋なWindowsプロジェクトでは、なぜ自動的に行末の改行が必要なのでしょうか?
- 21. 純粋なjavascriptのアニメーション、jqueryなし
- 22. aspxページではないクラスへの純粋なASP.NETルーティング
- 23. 純粋なpythonクロスプラットフォームのフォントレンダラー?
- 24. Androidの純粋なトーン
- 25. 純粋な機能のタイムアウト
- 26. 純粋なC++/CLIのMSIL
- 27. 純粋なRubyプロジェクトのディレクトリレイアウト
- 28. 純粋なCSSのヘルプ
- 29. 純粋なクライアント側のMarkitup
- 30. 純粋なJavaからMacアドレス帳APIにアクセスできますか?
これは正しくありません。 C++/CLIラッパーも動作します。 Win32アプリケーションは、ラッパーが呼び出すための関数ポインターをラッパーに渡す必要がありますが、正常に動作します。あまりにも多くの作業が必要になりますが、ラッパーdllはRPCなどの他のメソッドを使用することもできます。 – dschaeffer
@dscaeffer C++/CLIラッパーは動作しますが、OPは純粋なWin32が必要でした。 –
私は彼がアプリケーションのために純粋なWin32を望んでいると言っていたと信じていましたが、そうでない場合は正しいです。彼が元のコンポーネントソースにアクセスできない場合、COMラッパーも純粋なWin32ではありません – dschaeffer