0

何が起こったのかわからず、一晩中修正を探していました。MDI フォームをダブルクリック (または右クリックして [デザイナーの表示] を選択) すると、フォーム デザイナー ビューの代わりに html が表示されます。デバッグしようとすると、Visual Studio は、フォームのインスタンスを作成しようとするとスローされるエラーを表示します。内部例外/スタック トレースを以下に示します。

System.InvalidOperationException は処理されませんでした Message="フォームの作成中にエラーが発生しました。詳細については、Exception.InnerException を参照してください。エラーは次のとおりです: クラスが登録されていません (HRESULT からの例外: 0x80040154 (REGDB_E_CLASSNOTREG))" Source="Blah" StackTrace: at Blah. My.MyProject.MyForms.Create_インスタンス_[T](T インスタンス) in 17d14f5c-a337-4978-8281-53493378c1071.vb:line 190 at Blah.My.MyProject.MyForms.get_mdiBlah() at Blah.mdiBlah.Main() in C:\Users\Home \Desktop\ClientSoftware\ClientSoftware\mdiBlah.Designer.vb: System.AppDomain._nExecuteAssembly(アセ​​ンブリ アセンブリ、String[] args) の行 1 System.AppDomain.nExecuteAssembly(アセ​​ンブリ アセンブリ、String[] args) で System.Runtime. Hosting.ManifestRunner.Run(Boolean checkAptModel) で System.Runtime.Hosting.ManifestRunner.ExecuteAsAssembly() で System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext, String[] activationCustomData) で System.Runtime.Hosting.ApplicationActivator.CreateInstance (ActivationContext アクティベーション コンテキスト) System.Activator で。System.Threading.ThreadHelper.ThreadStart_Context(オブジェクト状態) で Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssemblyDebugInZone() で CreateInstance(ActivationContext activationContext) を実行します。 Threading.ThreadHelper.ThreadStart()

この問題のいくつかの一般的な修正は次のとおりです。

  1. コード ビハインドのクラス名がデザイナー コードのクラス名と同じであることを確認してください。小切手。
  2. プロジェクトが使用するすべての参照が含まれていることを確認してください。小切手。
  3. 残念ながら、現時点では覚えていないことが他にもいくつかあります。

これはかなり自由度の高いエラーである可能性があることはわかっています。しかし、これについて何らかの方向性が本当に必要であり、将来的には他の誰かのガイドとしても役立つことを願っています.

4

1 に答える 1

0

@Hans Passantを使用すると、答えは次のようになります。フォームでActiveXコントロールを使用していて、正しく登録されていません。インストーラーを再実行します。ありがとうハンス

于 2012-10-24T14:41:46.170 に答える