var settings = new System.Drawing.Printing.PageSettings();
System.Diagnostics.Debug.WriteLine( "Landscape: " + settings.Landscape );
このコードをマネージド アプリケーションで実行すると、すべて問題ありません。ただし、混合モード (C# および C++) アプリケーションでは、Landscape
プロパティ (またはオブジェクトのその他のプロパティ) にアクセスするときsettings
に、プリンター ドライバー DLL が何度もロードおよびアンロードされるため、マネージ モードよりもコードが大幅に遅くなります。応用。出力には、次のような数十行が含まれます。
Loaded 'C:\WINDOWS\system32\spool\drivers\w32x86\3\EP0LUZ00.DLL', Cannot find or open the PDB file
Unloaded 'C:\WINDOWS\system32\spool\drivers\w32x86\3\EP0LUZ00.DLL'
このような「無駄遣い」を防ぐためにできることはありますか?