Отображать продолжительность назначения Outlook? - PullRequest
1 голос
/ 06 мая 2019

Я не могу отобразить продолжительность каждой встречи в моем списке.Я пытаюсь напечатать в списке 11:30;(60) Ч / Б или 11: 30-12: 30;B / H, однако не знаете, как это сделать, пожалуйста, кто-нибудь может помочь?

Я пробовал $Duration и $._Duration, поместив их между "[...]Start.ToString('HH:mm'), $_.Subject } " 'HH:mm' и $_. subject, однако это не былоуспешный

#listbox for calendar entry
$Listboxcal= New-Object System.Windows.Forms.ListBox 
$Listboxcal.Location = New-Object System.Drawing.Size(10,55) 
$Listboxcal.Size = New-Object System.Drawing.Size(80,270) 
$Listboxcal.Height = 150

add-type -assembly “Microsoft.Office.Interop.Outlook” | out-null
$outlook = new-object -comobject outlook.application
$namespace = $outlook.GetNameSpace(“MAPI”)
# https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.outlook.oldefaultfolders?view=outlook-pia
# Calendar = olFolderCalendar = 9
$calendar = $namespace.GetDefaultFolder(9)
# get today's calendar items!
 $cItems = $calendar.Items | Where-Object {$_.Start -ge $(Get-Date $StrCaldate) -and $_.Start -le $(Get-Date $StrCaldate).AddDays(1)} |Sort-Object -Property Start | foreach { "{0}; {1}" -f $_.Start.ToString('HH:mm'), $_.Subject } 
ForEach ($calendars in $cItems) {[void]$Listboxcal.Items.Add($calendars)}

Ответы [ 2 ]

1 голос
/ 06 мая 2019

Встречи в календаре имеют свойство продолжительности. Вам просто нужно добавить это к переменной $cItems

$cItems = $calendar.Items | Where-Object {$_.Start -ge $(Get-Date $StrCaldate) -and $_.Start -le $(Get-Date $StrCaldate).AddDays(1)} |Sort-Object -Property Start | foreach { "{0}; ({1}) {2}" -f $_.Start.ToString('HH:mm'), $_.Duration, $_.Subject }

Когда я запускаю это в своем собственном календаре, я получаю следующее:

16:30; (60) Appointment 1 18:30; (120) Appointment 2

0 голосов
/ 06 мая 2019

У меня работает со свойством Длительность:

$calendar.Items | Select -First 1 | %{ $_.StartUTC.Tostring("hh:mm") `
+ "; (" + $_.Duration + ") " + $_.Subject}
...