MFC C++ activex コントロールを再開発するには、どの C# プロジェクト タイプを使用しますか?
-
09-06-2019 - |
質問
VS2008 の C# プロジェクト テンプレートを見ると、WPF ユーザー コントロール ライブラリ、WPF カスタム コントロール ライブラリ、および Windows フォーム コントロール ライブラリが提供されています。C++ で書かれた従来のアクティブ コントロールを C# と .NET の世界に移行したい場合、次のどれを使用しますか?
解決
いくつかの異なることを一度に実行しようとしているようです。
- コードを新しいバージョンの Visual Studio のビルドに移行します。
- テクノロジーの使用を新しいテクノロジー (ActiveX から .net) に移行します。
- 言語を移行します (C++ から C#)。
コードベースが小さい場合は、最初から開始して、必要に応じて機能を新しいコードベースに移植する方がよいでしょう。
大規模なコードベースの場合、これは労力と欠陥率の両方でコストのかかるタスクであることを認識する必要があります。
注文は次のようになります。
- コードを新しいバージョンの Visual Studio にインポートします。コンパイルしてみましょう。各プロジェクトのプロジェクト設定を確認します。
- コードをリファクタリングして、mfc コードと activex コードをできるだけ分離します。特に開始前に単体テストをあまり行わない場合は、適切なリファクタリング プラクティスに従ってください。
- ActiveX レイヤーを .net に置き換えることを検討してください。
- MFC の置き換えに最適な GUI ツールキットを検討してください。
- 言語 - まずはマネージド C++ への移行を検討してください。
- マネージド C++ から C# への移行を検討してください。
最も重要なのは、上記のすべてを行うことを正当化できることです。
他のヒント
これを行うプロジェクト テンプレートはありません。ユーザーコントロールを読んで開始することもできます。
所属していません StackOverflow