Создание скрытых папок Outlook в PowerShell
В целях сохранения конфиденциальности я хотел создать скрытую папку в моем клиенте Outlook, чтобы мои коллеги не могли просматривать мои личные / конфиденциальные электронные письма.
До сих пор мне удалось создать сам файл, но мне было интересно, можно ли сделать его "невидимым", если да, то как?
вот мой код до сих пор:
$ol = New-Object -ComObject Outlook.Application
$ns = $ol.GetNamespace("MAPI")
$in = $ns.GetDefaultFolder([Microsof.Office.Interop.Outlook.OlDefaultFolders]::olFolderInbox)
$nf = $in.Folders.Add("HideMe")
благодарю вас;)
1 ответ
Два варианта:
Создайте папку и установите свойство PR_ATTR_HIDDEN MAPI (имя DASL
http://schemas.microsoft.com/mapi/proptag/0x10F4000B
) правда, используяMAPIFolder.PropertyAccessor.SetProperty
,Создайте папку вне поддерева IPM, видимого для конечного пользователя. Все магазины начинаются с корневой папки, невидимой для пользователя. Корневая папка IPM является дочерней по отношению к этой корневой папке. Вы можете создать папку в качестве одного из корневых папок IPM, но для этого вам потребуется использовать Extended MAPI (C++ или Delphi) или Redemption (любой язык). Что-то вроде следующего:
set Session = CreateObject("Redemption.RDOSession")
Session.MAPIOBJECT = ol.Session.MAPIOBJECT
set Store = Session.Stores.DefaultStore
set HiddenFolder = Store.RootFolder.Folders.Add("Not visible")