我需要在数千台计算机上更改Outlook 2010中的默认地址列表。要在Outlook中手动执行此操作,请转到地址簿>工具>选项>并从“打开地址簿时,首先显示此地址列表:”下拉框中选择一个地址簿。
这是我到目前为止所做的:
$outlook = $(New-Object -ComObject Outlook.Application)
$Session = $outlook.Session
$Session.Logon()
$ab = $Session.AddressLists | ? {$_.Name -eq 'Example Address Book')}
$abdialog = $Session.GetSelectNamesDialog()
$abdialog.InitialAddressList = $ab
我收到的错误是:
异常设置“InitialAddressList”:“无法转换”System ._ ComObject“类型的值 “System。 _ComObject#{00063049-0000-0000-c000-000000000046}”键入“Microsoft.Office.Interop.Outlook.AddressList”。“ 在行:1个字符:1 + $ abdialog.InitialAddressList = $ Session.AddressLists | ? {$ _。name -eq'BAE Syste ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:NotSpecified:(:) [],SetValueInvocationException + FullyQualifiedErrorId:ExceptionWhenSetting
请帮助我疯了!
答案 0 :(得分:0)
我不知道这是不是一个错字,而是在:
$ab = $Session.AddressLists | ? {$_.Name -eq 'Example Address Book')}
您应该删除最后一个右括号
$ab = $Session.AddressLists | ? {$_.Name -eq 'Example Address Book'}
之后你的代码适合我。