最適な方法は何ですか? .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. 純粋なC#と.NETフレームワークでアナグラムジェネレータを書く方法
- 3. 純粋なas3アプリケーションのSoftKeyboardType
- 4. 完全な位置決め、純粋なCSSソリューションが必要
- 5. ASP.NETで純粋なJavascriptアプリケーション
- 6. 純粋なコンソールAndroidアプリケーション?
- 7. 純粋なHTML対HATEOAS APIを定義するフレームワーク?
- 8. 以下の線図が必要です。純粋なhtmlとcss
- 9. 純粋なJS(フレームワークなし)のsvg円グラフ
- 10. 純粋なHaskellコードにはスレッドプールが必要ですか?
- 11. "純粋な" IDispatchインターフェイスにはプロキシ/スタブDLLが必要ですか?
- 12. 変換が必要な不変のデータを持つ純粋な汎用のReactコンポーネントの作成方法
- 13. MVCを使用しない純粋なASP.NET Web APIサービスでは、Area.RegisterAllAreas()のAreaRegistration.RegisterAllAreas()がまだ必要ですか?
- 14. 純粋なHTTPコールでGoogleカレンダーAPIにアクセスする
- 15. アクセス純粋な数字だけで
- 16. .NET単純なアプリケーションのアップデートメカニズム
- 17. コンポーネントは純粋な関数として記述する必要があります
- 18. 純粋なJavascriptでの要素座標
- 19. XPでの単純なWindowsフォームアプリケーションと.NETフレームワーク要件
- 20. Win32アプリケーションとIBM RDZ/Eclipseからのメインフレームファイルへのコヒーレントなアクセス?
- 21. 単純な3列の純粋なCSSレイアウトはありますか?次のことを必要としない
- 22. Springフレームワークで純粋なaspectJを使用したい
- 23. 純粋なJavaScriptの
- 24. .NETで<4の単純なスレッドセーフリストオブジェクトが必要です
- 25. C#.NetのWin32アプリケーション
- 26. オフラインHTML5と純粋なCSSエディタとビューアが必要 - Operaが最高です
- 27. クラスメソッドを純粋なものにする必要がありますか?
- 28. 純粋なCSSリニアグラデーションボーダー
- 29. 純粋なCSSスライダー
- 30. コンテンツスライダ純粋なCSS
これは正しくありません。 C++/CLIラッパーも動作します。 Win32アプリケーションは、ラッパーが呼び出すための関数ポインターをラッパーに渡す必要がありますが、正常に動作します。あまりにも多くの作業が必要になりますが、ラッパーdllはRPCなどの他のメソッドを使用することもできます。 – dschaeffer
@dscaeffer C++/CLIラッパーは動作しますが、OPは純粋なWin32が必要でした。 –
私は彼がアプリケーションのために純粋なWin32を望んでいると言っていたと信じていましたが、そうでない場合は正しいです。彼が元のコンポーネントソースにアクセスできない場合、COMラッパーも純粋なWin32ではありません – dschaeffer