2つのプロジェクトがあります。どちらも WPF アプリケーションです。
アプリケーション 1 : 外部ハードウェアとの相互通信のみを提供します。そのために、Application ルート クラスにはいくつかのパブリック共有クラスがあります。
Public Shared Log As New clsLog
Public Shared NavigationObjectContainer As New Dictionary(Of String, Object)
2 番目のプロジェクトは主にGUIであり、Application ルート クラスでいくつかのパブリック共有クラスも使用します。
Public Shared Nav As New clsNavigationHelper
これで、2 番目のプロジェクト (GUI) がプロジェクト 1 (ハードウェア) への参照を取得し、次のエラーが表示されます。
Der Typeninitialisierer für "TB_HyperTerminal.Application" hat eine Ausnahme verursacht. これはドイツ語ですが、クラス 1 (ハードウェア) の Application オブジェクトがすべての共有クラス (clsLog や NavigationObjectContainer など) を見つけることができないことを意味します。
内部例外
{"Das Objekt des Typs "FSCANT3.Application" kann nicht in Typ "TB_HyperTerminal.Application" umgewandelt werden."}
私の質問は、これを解決して、各プロジェクトの正しいアセンブリと正しいApplicationオブジェクトを取得する方法です。
理由を検索すると、プロジェクト 2 (ハードウェア) のクラスの名前を TBHApplication に変更しましたが、プロジェクト 1 は引き続きアプリケーションと呼ばれます。いいえ、キャストができない理由はわかります。