Add-Type:chould not load file or assembly microsoft.office.interop.outlook

时间:2017-02-04 12:35:59

标签: powershell outlook

我尝试使用下面的PowerShell代码读取outlook-inbox:

Add-Type -AssemblyName microsoft.office.interop.outlook 
$olFolders = “Microsoft.Office.Interop.Outlook.OlDefaultFolders” -as [type]
$outlook = New-Object -ComObject outlook.application
$namespace  = $Outlook.GetNameSpace(“mapi”)
$inbox = $namespace.getDefaultFolder($olFolders::olFolderInbox)

但是我收到以下错误:

  

Add-Type:无法加载文件或程序集   microsoft.office.interop.outlook,Version = 12.0.0.0,...

2 个答案:

答案 0 :(得分:0)

  

互操作库本身不是.NET框架本身的一部分   视觉工作室的一部分。您可以从中复制Interop库   “Program Files \ Microsoft Visual Studio 9.0 \ Visual Studio工具   Office \ PIA \ Office12“

Source

答案 1 :(得分:0)

首先,确保在Office的安装向导中选择.Net可编程性支持。

enter image description here

在这种情况下,所有Office互操作程序集都将与Office一起安装。

您也可以考虑单独安装它们。请参阅Microsoft Office 2010: Primary Interop Assemblies Redistributable

不幸的是,无法使用即点即用Office版本进行自动化。这是由于使用了虚拟化过程。根据{{​​3}},您可以将C2R版本切换为MSI版本。在the information here文章中了解有关Office 2010可能出现的问题的详细信息。