Silverlight 5 のブラウザー内アプリケーションで使用できる高度な信頼機能を備えたブラウザーで実行されている Silverlight アプリケーションがあります。アプリケーションを使用して、既に実行されている Excel のインスタンス (つまり、 Excel は Silverlight アプリケーション自体によって開始されません)。重要なのは、複数のインスタンスがある場合に、最後にアクティブ化された (選択された) Excel のインスタンスを取得したいということです。
通常の .NET デスクトップ アプリケーションでこのようなことを行いました。問題の議論はここに要約されています。残念ながら、この例では、Silverlight にはない .NET クラス ( System.Diagnostics.Process
. Silverlight でこれを行う別の方法はありますか?
Excel の最初の実行中のインスタンスを取得する方法は既に知っていることに注意してください。
System.Runtime.InteropServices.Automation を使用して;
...
dynamic excel = AutomationFactory.GetObject("Excel.Application");