gpt4 book ai didi

Powershell 无法从命令提示符创建 Outlook COM 对象

转载 作者:行者123 更新时间:2023-12-03 16:41:48 26 4
gpt4 key购买 nike

我有一个脚本,用于从命令提示符通过 Microsoft Outlook 发送邮件。如果我从 PowerShell 或 ISE 控制台中运行它,这会正常工作。但是当我尝试从经典的 Windows 命令提示符 (cmd.exe) 执行相同的命令时,即使具有管理员权限,它也无法创建 Outlook COM 对象。这是创建 COM 对象的行:

$objOutLook = New-Object -com Outlook.Application

这就是我从 cmd.exe(管理权限)调用我的脚本的方式:

D:>powershell D:\MiscBuildTasks.ps1 -sendmail -MailTo 'farrukh@MyMail.com'



这是错误日志:

New-Object : Retrieving the COM class factory for component with CLSID {0006F03A-0000-0000-C000-000000000046} failed due to the following error: 80080005 Server execution failed (Exception from HRESULT: 0x80080005 (CO_E_SERVER_EXEC_FAILURE)). At D:\MiscBuildTasks.ps1:81 char:12 + $Outlook = New-Object -ComObject Outlook.Application + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : ResourceUnavailable: (:) [New-Object], COMException + FullyQualifiedErrorId : NoCOMClassIdentified,Microsoft.PowerShell.Commands.NewObjectCommand



我怎样才能让它从 cmd.exe(Windows 命令提示符)工作??
谢谢

最佳答案

CO_E_SERVER_EXEC_FAILURE在 Outlook 的情况下意味着调用应用程序和 COM 服务器在不同的安全上下文中运行。如果命令提示符以提升的权限运行,请确保 Outlook 也以提升的权限启动,或者在您的代码执行时它根本不运行 - 这样 Outlook 将由您的代码启动,并以相同的提升权限。

关于Powershell 无法从命令提示符创建 Outlook COM 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29772500/

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