gpt4 book ai didi

c# - Excel 自动化 Windows 服务

转载 作者:行者123 更新时间:2023-11-30 14:59:05 24 4
gpt4 key购买 nike

我有一个运行 Excel Interop 的 Windows 服务,以便自动执行各种宏。但是,当我尝试运行使用 Windows 身份验证访问数据库的宏时,我遇到了一个特殊问题...

如果宏通过 Windows 服务 运行,工作簿会打开,宏开始执行,但应用程序会挂起(可能是在数据访问部分)。

但是,如果宏通过 Visual Studio 调试器运行,使用与服务相同的实现(它们调用相同的类库),它会执行、保存工作簿并关闭预期。

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

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

最佳答案

也许我来晚了一点,但我还是来了:

我有一个类似的问题,通过在 C:\Windows\SysWOW64\config\systemprofileC:\Windows\中创建一个 Desktop 文件夹解决了这个问题System32\config\systemprofile.

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

我没有进一步的解释,但它对我有用并且没有引起任何其他已知问题。我进行了大量搜索以寻找明确的答案,但我找到的所有内容都描述了解决方案,但没有说明原因。

关于c# - Excel 自动化 Windows 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17349386/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com