期待どおりに動作する Excel 用の COM オートメーション サーバーを作成しましたが、Excel によって再起動されることがあります。これがなぜなのか、これを処理する最善の方法は何か、またこれを防ぐために私にできることがあれば、誰かが知っていますか?
RTDサーバーです。ドキュメントに記載されているように、ServerTerminate
インターフェイスは、次のシナリオのいずれかでホスト (Excel) によってのみ呼び出される必要があります。
- サーバーが正しく起動しませんでした (したがって、戻りませんでした
- シート上のすべての rtd が削除されたため、サーバーにはコンテキストがありません
http://msdn.microsoft.com/en-us/library/office/aa140060%28v=office.10%29.aspx
ただし、実際には、上記の条件のいずれも満たされていない場合に呼び出されます。これServerTerminate
と組み合わせて、何か他のことが起こっていると思います。また、これは特定のインターフェイスに関連するものではなく、COM オートメーションの問題である可能性があるため、使用される特定のタイプのオートメーション サーバー (rtd) は無関係であると私は信じています。