虽然我能够检索默认联系人属性,但我希望检索计算机网络名称或FTP站点等值。
我理解在我的代码中添加了一些内容,比如我要检索的每个扩展属性。我找到了一些C#代码示例,但到目前为止,我还是想在PowerShell中编写代码。
这是一段代码,其中默认属性有效,但不是扩展属性。
$folderid= new-object Microsoft.Exchange.WebServices.Data.FolderId([Microsoft.Exchange.WebServices.Data.WellKnownFolderName]::Contacts,$MailboxName)
$Contacts = [Microsoft.Exchange.WebServices.Data.Folder]::Bind($service,$folderid)
$ivItemView = New-Object Microsoft.Exchange.WebServices.Data.ItemView(50000)
$fiItems = $null
do{
$fiItems = $service.FindItems($Contacts.Id,$ivItemView)
$psPropset = new-object Microsoft.Exchange.WebServices.Data.PropertySet([Microsoft.Exchange.WebServices.Data.BasePropertySet]::FirstClassProperties)
$psPropset.Add([Microsoft.Exchange.WebServices.Data.ItemSchema]::MimeContent)
#Properties list https://msdn.microsoft.com/en-us/library/cc839633.aspx
$ComputerNetworkName = new-object Microsoft.Exchange.WebServices.Data.ExtendedPropertyDefinition(0x3A49,[Microsoft.Exchange.WebServices.Data.MapiPropertyType]::String)
#Add extended properties to properties set
$psPropset.Add($ComputerNetworkName);
[Void]$service.LoadPropertiesForItems($fiItems,$psPropset)
foreach($Item in $fiItems.Items){
$Item.ExtendedProperties | fl *
}
}
$ivItemView.Offset += $fiItems.Items.Count
}while($fiItems.MoreAvailable -eq $true)
如果有人有线索......
提前致谢!
答案 0 :(得分:0)
在我这里提出问题时添加我的答案有助于我思考。 :)
#Create extended properties
$ComputerNetworkName = new-object Microsoft.Exchange.WebServices.Data.ExtendedPropertyDefinition(0x3A49,[Microsoft.Exchange.WebServices.Data.MapiPropertyType]::String)
#Add extended properties to properties set
$psPropset.Add($ComputerNetworkName);
编辑上面的代码,为下一位读者提供一个有效的代码。