Excel自动化Windows服务

我有一个运行Excel Interop的Windows服务,以便自动执行各种macros。 然而,当我尝试运行使用Windows身份validation访问数据库的macros时,我正在运行一个特殊的问题…

如果macros通过Windows服务运行,则打开工作簿,并开始执行macros,但应用程序挂起(大概在数据访问部分)。

但是,如果macros通过Visual Studiodebugging程序运行,使用与服务相同的实现(它们调用相同的类库),它将执行,保存工作簿并按预期方式closures。

我敢肯定,这与模仿有关,但我似乎无法弄清楚。 我有我的用户下运行的Windows服务,我也修改组件服务默认的COM属性Impersonate而不是默认的Identify

任何帮助将不胜感激,因为它将是首选作为Windows服务而不是控制台应用程序运行。

也许我有点晚了,但我仍然在这里:

我有一个类似的问题,并通过在C:\Windows\SysWOW64\config\systemprofileC:\Windows\System32\config\systemprofile创build一个Desktop文件夹来解决它。

在Windows服务中使用Excel似乎无法在特定的用户下运行。 因此,它使用LocalSystem服务帐户运行,并且它需要一个Desktop文件夹才能与Excel互操作。

我没有进一步的解释,但是它为我工作,并没有导致任何其他知道的问题。 我为了一个明确的答案search了很多东西,但是我find的所有东西都没有说明一个理由。