これはC#コンソールアプリケーションです。私はこのようなことをする関数を持っています:
static void foo()
{
Application powerpointApp;
Presentation presentation = null;
powerpointApp = new Microsoft.Office.Interop.PowerPoint.ApplicationClass();
}
それがすべてです。呼び出されると、関数がヒットするまでに15秒の遅延があります。私はこのようなものを追加しました:
static void MyAssemblyLoadEventHandler(object sender, AssemblyLoadEventArgs args)
{
Console.WriteLine(DateTime.Now.ToString() + " ASSEMBLY LOADED: " + args.LoadedAssembly.FullName);
Console.WriteLine();
}
これは、foo関数がヒットする約10ミリ秒前に相互運用機能アセンブリがロードされたことを通知して起動します。これについて私は何ができますか?プログラムはこの関数を一度呼び出して(そして最終的には何か他のことをする)、それから終了する必要があるので、これらのアセンブリをキャッシュするか何かをする必要があります。アイデア?