現在のOutlookセッションを照会するPowerShellスクリプトがあります。予想されるようにちょうどunelevated PowerShellウィンドウでそれを実行Outlookを使用するCOMクラスコンポーネントが管理者権限でのみ失敗する
は動作しますが、私は昇格プロンプトにいるとき、以下に示すように、それは失敗します。
「通常」のセッション:
PS> New-Object -Com Outlook.Application
Application : System.__ComObject
Class : 0
Session : System.__ComObject
Parent :
Assistant :
Name : Outlook
Version : 15.0.0.4903
COMAddIns : System.__ComObject
Explorers : System.__ComObject
Inspectors : System.__ComObject
LanguageSettings : System.__ComObject
ProductCode : {90150000-000F-0000-0000-0000000FF1CE}
AnswerWizard :
FeatureInstall : 1
Reminders : System.__ComObject
DefaultProfileName : Outlook
IsTrusted : False
Assistance : System.__ComObject
TimeZones : System.__ComObject
PickerDialog : System.__ComObject
上昇1:
PS> New-Object -Com Outlook.Application
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 line:1 char:1
+ New-Object -Com Outlook.Application
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (:) [New-Object], COMException
+ FullyQualifiedErrorId : NoCOMClassIdentified,Microsoft.PowerShell.Commands.NewObjectCommand
エレベーションは、管理者グループ内の同じユーザーアカウントを使用します。なぜこれが起こるのですか?それを修正する方法は?私が知っているように、昇格していないアプリケーションは高位のアプリケーションと直接通信することはできませんが、それ以外の方法ではうまくいくはずです。私はまた、管理者としてOutlookを起動しようとしましたが、期待どおりの違いはありません。
EDIT:
C:/WINDOWS/system32> $PSVersionTable
Name Value
---- -----
PSVersion 5.1.14393.693
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.14393.693
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
それはこの問題を調査私を助けに@Lievenへ
昇格したセッションとしてOutlookを起動しても、昇格していないセッションと同じOutlookプロファイルが読み込まれますか? – Random206
はい、同じです。 – Clijsters
Outlookを開いている場合、または最初に通常のセッションを開いてインスタンスを作成した場合、問題を再現できます。私の高められたNew-Objectは、Outlookが閉じられても誰もがCOMを介して接続していなければ正常に動作します。私の最高の教育を受けた推測では、異なる高度レベルを持つ複数のプロセスでOutlookに接続できないということです。それがどうしてあろうと、私は正直言って実際には考えていない。 –