Создание скрытых папок 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 ответ

Два варианта:

  1. Создайте папку и установите свойство PR_ATTR_HIDDEN MAPI (имя DASL http://schemas.microsoft.com/mapi/proptag/0x10F4000B) правда, используя MAPIFolder.PropertyAccessor.SetProperty,

  2. Создайте папку вне поддерева 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")

Другие вопросы по тегам