2012-12-19 57 views

回答

9

在C#中,你可以添加静态构造函数的类,这可能是解决打电话SetCurrentProcessExplicitAppUserModelID的问题的方法,其包含main方法。静态构造函数中的代码将在main之前执行。

+0

这当然会在Main之前执行,尽管它似乎没有解决调用SetCurrentProcessExplicitAppUserModelID的问题。也许问题在于它是一个控制台应用程序 –

+0

是的,更改为Windows应用程序而不是控制台解决了我的其他问题。 –

1

静态构造函数将在Main之前执行,但前提是该类实际上被某个东西引用。例如:

class ClassWStaticCon 
{ 
    static ClassWStaticCon() 
    { 
     Console.WriteLine("Hello world!"); 
    } 
} 

... 
static void Main(string[] args) 
{ 
    Console.WriteLine("Hello main."); 
} 

会打印:

你好为主。

class ClassWStaticCon 
{ 
    public static int SomeField; 
    static ClassWStaticCon() 
    { 
     Console.WriteLine("Hello world!"); 
    } 
} 

... 
static void Main(string[] args) 
{ 
    ClassWStaticCon.SomeField = 0; 
    Console.WriteLine("Hello main."); 
} 

会打印:

世界,你好!你好主。

如果你想控制的执行顺序,然后在一个单一的静态使用Action的队列中的代表http://msdn.microsoft.com/en-us/library/018hxwa8.aspx“初始化所有预先主的东西”类。

相关问题