Excel Interop
さまざまなマクロの実行を自動化するために を実行する Windows サービスがあります。ただし、 Windows 認証を使用してデータベースにアクセスするマクロを実行しようとすると、特有の問題が発生します...
マクロがWindows Service を介して実行される場合、ワークブックが開かれ、マクロの実行が開始されますが、アプリケーションは (おそらくデータ アクセス部分で) ハングします。
ただし、サービスと同じ実装 (同じクラス ライブラリを呼び出す) を使用して、Visual Studio デバッガーでマクロを実行すると、マクロが実行され、ブックが保存され、期待どおりに閉じられます。
これは偽装と関係があると確信していますが、それを理解できないようです。ユーザーの下で Windows サービスを実行しており、コンポーネント サービスの既定の COM プロパティをImpersonate
既定の代わりに変更しましたIdentify
。
コンソール アプリケーションではなく、Windows サービスとして実行することをお勧めします。