为何将dcomcnfg身份设为特定用户时Outlook出现访问拒绝?
问题:Outlook DCOM身份设为特定用户时触发访问拒绝错误
自行开发的服务程序已稳定运行10年,功能为通过Outlook向日历添加条目。此前只需在dcomcnfg中选择「Outlook消息对象」,将运行身份改为已正确配置Outlook的特定用户,程序即可正常运行。
现客户新电脑已正确配置Outlook,但将dcomcnfg中的身份从「交互式用户」改为特定用户Work101后,服务程序调用Outlook对象时出现访问拒绝错误:
- 以Work101账号登录Windows后,运行非服务类测试程序也出现相同错误;
- 但将DCOM身份设为「交互式用户」或「执行用户」(均对应Work101)时,测试程序可正常运行;
- 已确认用户名、密码无误,无重名用户;
- 排查注册表、修复Office 365、重启机器等操作均无效,同配置虚拟机上操作无问题;
- 测试程序直接调用
Outlook.Application或使用interop函数,结果一致。
附DCOM事件日志:
- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> - <System> <Provider Name="Microsoft-Windows-DistributedCOM" Guid="{1B562E86-B7AA-4131-BADC-B6F3A001407E}" EventSourceName="DCOM" /> <EventID Qualifiers="0">10000</EventID> <Version>0</Version> <Level>2</Level> <Task>0</Task> <Opcode>0</Opcode> <Keywords>0x8080000000000000</Keywords> <TimeCreated SystemTime="2023-08-21T14:06:47.3753088Z" /> <EventRecordID>22884</EventRecordID> <Correlation ActivityID="{7c7f596d-3cd3-4cba-892b-8f6c7524d954}" /> <Execution ProcessID="976" ThreadID="16368" /> <Channel>System</Channel> <Computer>VS-ADS02</Computer> <Security UserID="S-1-5-21-3793602545-3278945853-1181855047-1630" /> </System> - <EventData> <Data Name="param1">C:\Program Files\Microsoft Office\Root\Office16\OUTLOOK.EXE -Embedding</Data> <Data Name="param2">2147942405</Data> <Data Name="param3">{0006F03A-0000-0000-C000-000000000046}</Data> </EventData> </Event>
内容的提问来源于stack exchange,提问作者Daniel Boss
相关产品推荐
相关产品推荐

