我有一个运行的 Windows 服务,Excel Interop
以便自动执行各种宏。但是,当我尝试运行一个使用 Windows 身份验证访问数据库的宏时,我遇到了一个特殊的问题......
如果宏通过 Windows 服务运行,则打开工作簿并开始执行宏,但应用程序挂起(可能在数据访问部分)。
但是,如果宏通过 Visual Studio 调试器运行,使用与服务相同的实现(它们调用相同的类库),它会执行、保存工作簿并按预期关闭。
我确定这与模仿有关,但我似乎无法弄清楚。我在我的用户下运行了 windows 服务,并且我还修改了组件服务中的默认 COM 属性,Impersonate
而不是默认的Identify
.
任何帮助将不胜感激,因为它最好作为 Windows 服务而不是控制台应用程序运行。