考虑Severity Code Description Project File Line Suppression State
Error C3145 'form': global or static variable may not have managed type 'CppWinForm1::MyForm' CppWinForm1
Error (active) a variable with static storage duration cannot have a ref class type CppWinForm1
类中的以下代码:
Program
对于这个应用程序,我们需要将程序集static EmbeddedClass MyClass;
static Program()
{
AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
}
static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
{
//Load EmbeddedClass here
}
置于应用程序内部,而不是作为dll与它一起。因此加载我们需要使用EmbeddedClass
的组件。
但是,上面的代码不起作用,因为在运行它时会给出:
mscorlib.dll中发生未处理的“System.TypeInitializationException”类型异常
附加信息:“程序”的类型初始化程序引发了异常。
我相信这是因为它试图在运行静态构造函数之前加载AssemblyResolve
的程序集。
有没有解决这种情况?