他のアプリケーションで使用されるいくつかの UI コントロールを含む新しいライブラリ バージョンに取り組んでいます。これらのコントロールの一部には、古いアプリケーションが認識していない新しい機能があります。デフォルトでは新機能を無効にしますが、有効にしたい特定のアプリがあります。アプリは同じマシン上に存在する可能性があります。
これをどのように実装することをお勧めしますか?
更新: 私が思いついた最善の解決策は、Process.GetCurrentProcess() を使用し、proc.MainModule.FileVersionInfo.InternalName のようなものを使用して、オーバーライド値を指定するレジストリ キーを探すことです。おそらく、バージョン番号を調べて、新機能について知るには古すぎることを確認することもできます。この方法に問題はありますか?
更新: 追加された機能はコントロール内にカプセル化されています。これは、一部のコンテキストでは意味があり、他のコンテキストでは意味がないということです。