.NET Mainメソッドの前にユーザー提供のコードを実行することは可能ですか?
コードを管理解除する必要がある場合は許容されます。
質問する理由は、UI要素が表示される前にSetCurrentProcessExplicitAppUserModelIDを呼び出す問題を解決する方法である可能性があるためです(Windowsタスクバーの個別のプロセスのグループ化で説明されています) 。
.NET Mainメソッドの前にユーザー提供のコードを実行することは可能ですか?
コードを管理解除する必要がある場合は許容されます。
質問する理由は、UI要素が表示される前にSetCurrentProcessExplicitAppUserModelIDを呼び出す問題を解決する方法である可能性があるためです(Windowsタスクバーの個別のプロセスのグループ化で説明されています) 。
main
C#では、メソッドを含むクラスに静的コンストラクターを追加できます。静的コンストラクターのコードは、の前に実行されmain
ます。
静的コンストラクターは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.");
}
印刷します:
こんにちは世界!こんにちはメイン。
実行の順序を制御する場合は、単一の静的'クラスでアクションキューデリゲートhttp://msdn.microsoft.com/en-us/library/018hxwa8.aspxを使用します。