This project is read-only.

Using MAPIFolders

Please use caution

MAPIFolders is similar in functionality to the old ExFolders and PFDAVAdmin tools. Just like those tools, it is quite easy to alter permissions across tens of thousands of folders. And just like with those tools, it's a good idea to have a backup/export of your current state before you carry out an operation that will be hard to reverse.

Logging

Similar to how ExFolders and PFDAVAdmin required logging for many operations, MAPIFolders always generates a log file each time you run it. These logs go into %USERPROFILE%\Documents\MAPIFolders, and are called MAPIFoldersLog*.txt. Some operations will generate additional reports, which will go in the same folder.

Requirements and limitations

  • MAPIFolders must be run from a machine with Outlook on it, and the OS must be Windows 7 or newer.
  • If you are running 32-bit Outlook, you must run 32-bit MAPIFolders. If you're running 64-bit Outlook, you must run 64-bit MAPIFolders.
  • If Outlook is running, MAPIFolders will use the currently opened profile. Otherwise it will use the default or prompt for a profile.
  • MAPIFolders expects you to be an Exchange Administrator and it will pass the admin flag when it opens the MAPI session. If you're not an Exchange Admin, this will fail.
  • If the chosen profile is associated with an Exchange 2013 mailbox, the -Mailbox parameter will only be able to open other Exchange 2013 mailboxes. It will not be able to open Exchange 2010 mailboxes.

Usage

First, you must choose what you want to do. There are currently 6 possible operations:

-CheckFolderACL
-FixFolderACL

-AddFolderPermission
-RemoveFolderPermission

-CheckItems
-FixItems

By default, MAPIFolders assumes you want to run against the public folders. If you want to point at a mailbox instead, use:

-Mailbox:User1@contoso.com

The -Scope parameter is optional, and by default, -Scope is set to -Scope:Base. You can also specify:

-Scope:Onelevel (this looks at every immediate child folder of the specified folder)
-Scope:Subtree (this recurses every folder under the specified folder)

The folder path is not required. If one is not specified, the root folder is assumed. However, because the default scope is Base, and you cannot run these operations against the root folder, you must specify either a -Scope other than Base or a folder path. Some example folder paths:

"\Departments\Whatever"
"\Top Of Information Store\Inbox"

Last edited May 20, 2014 at 11:30 PM by bilong, version 4

Comments

No comments yet.