COM Shim dll を使用してそれ自体を Excel に読み込む .NET (C#) アドインがあります。Excel が正常に実行されている場合、アドインは問題なく正常に動作します。アドインは、さまざまなコマンドを実行するために使用される独自のカスタム ツールバーを Excel に表示します。
Excel を別のアプリケーション (DSOFramer など) に埋め込むと、アドインの動作がおかしくなり始めます。ツールバーのボタンを無効にすると、Visible プロパティを設定した後に再び有効にならないようです。また、Application::Selection オブジェクトが NULL であるため、「オブジェクト参照が設定されていません」というエラーが多数発生します。これは、Excel が正常に実行されている場合には発生しません。Application::GetAddIns() メソッドが呼び出されると、パーミッション エラーが発生することもあります。
ここで何が起こっているのかわからず、Excel が他のアプリケーション内に埋め込まれている場合の Excel COM アドインの動作を説明する記事を見つけることができませんでした。