Я хочу найти во всех моих папках Imap непрочитанные письма с помощью Mailkit и Powershell. Но я не могу даже перечислить все папки. Вот код:
$cl = New-Object MailKit.Net.Imap.ImapClient([mailkit.protocollogger]::new([console]::OpenStandardOutput()))
#connect
$cl.Connect($mailserver, $port)
$cl.Authenticate($username,$password)
$cl.GetFolders($Cl.PersonalNamespaces[0])
Результат всегда: « Папка в данный момент не открыта ». Но я думаю, что мне нужно сначала прочитать объекты папки, чтобы открыть их? Интересно, что протокол протокола перечисляет все мои папки в порядке:
Connected to imaps://.................
S: * OK [CAPABILITY IMAP4rev1 CHILDREN ENABLE ID IDLE LIST-EXTENDED LIST-STATUS LITERAL- MOVE NAMESPACE QUOTA SASL-IR SORT SPECIAL-USE THREAD=ORDEREDSUBJECT UIDPLUS UNSELECT WITHIN AUTH=LOGIN AUTH=PLAIN] IMAP server ready H mieue103 15.4 IMAP-1MRDBi-1ixnXt3r6a-00NV8i
C: A00000000 AUTHENTICATE PLAIN AGQucmfhgffhtFjZSghgQAjrhgrTc1OTg4NjUweHttztYj
S: A00000000 OK AUTHENTICATE completed
C: A00000001 CAPABILITY
S: * CAPABILITY IMAP4rev1 CHILDREN ENABLE ID IDLE LIST-EXTENDED LIST-STATUS LITERAL- MOVE NAMESPACE QUOTA SASL-IR SORT SPECIAL-USE THREAD=ORDEREDSUBJECT UIDPLUS UNSELECT WITHIN APPENDLIMIT=140000000
S: A00000001 OK CAPABILITY completed
C: A00000002 NAMESPACE
S: * NAMESPACE (("" "/")) NIL NIL
S: A00000002 OK NAMESPACE completed
C: A00000003 LIST "" "INBOX" RETURN (SUBSCRIBED CHILDREN)
S: * LIST (\HasNoChildren \Subscribed) "/" INBOX
S: A00000003 OK LIST completed
C: A00000004 LIST (SPECIAL-USE) "" "*" RETURN (SUBSCRIBED CHILDREN)
S: * LIST (\Archive \HasChildren \Subscribed) "/" Archiv
S: * LIST (\Drafts \HasNoChildren \Subscribed) "/" Entw&APw-rfe
S: * LIST (\Sent \HasNoChildren \Subscribed) "/" "Gesendete Objekte"
S: * LIST (\Trash \HasNoChildren \Subscribed) "/" Papierkorb
S: * LIST (\Junk \HasNoChildren \Subscribed) "/" Spam
S: A00000004 OK LIST completed
C: A00000005 LIST (SUBSCRIBED) "" "*" RETURN (CHILDREN)
S: * LIST (\HasChildren \Subscribed) "/" Work1
S: * LIST (\HasChildren \Subscribed) "/" Work2
... long list of all my folders ...
S: A00000005 OK LIST completed
Но я просто получаю сообщение об ошибке обратно:
format-default : The folder is not currently open.
+ CategoryInfo : NotSpecified: (:) [format-default], FolderNotOpenException
+ FullyQualifiedErrorId : MailKit.FolderNotOpenException,Microsoft.PowerShell.Commands.FormatDefaultCommand