I have a customer hosted in Exchange online, they'd like to create some folders that are undeletable and unmovable by their users, they do want users to be able to copy items into and out of the folders, the folders cannot be shared. I've been casting about for a MAPI property that would do the trick but PR_ACCESS is read-only/computed. I know I can create an add-in that prevents folders from move/delete but the solution needs to work in OWA as well as Outlook. Any Ideas?
Can't do that - all folders in the primary mailbox are read/write. If you open a delegate store, you can set the folder ACL.
Related
Currently users have their own inbox folder and due to corporate policy emails will automatically be deleted after a set period of time.
Some emails however users would like to be able to keep for reference.
In order to accomplish allowing users to keep their importasnt emails; a personal folder file .pst needs to be created. The deletion policy will on affect the exchange profile folder that they currently use. This special personal folder should not be touched by the corporate system.
I need to be able to run a powershell script to automatically create this folder for the user (logged in user on the computer) and assign it in outlook 2019 for use, the user will then copy their specific emails into that personal folder. If I can't do it for the current logged in user - then by a collection of usernames and put in their one drive folder ??
Anyone with knowledge of how to or code to do this, I would appreciate your help - while I can code - I'am not a Powershell Guru so specifics and functions that experts might know exactly - I do not know, so please in your answer provide good guidance.
I am using windows 10 .1909 and the powershell version that ships with it.
The Outlook object model provides the AddStoreEx method which adds a Personal Folders file (.pst) in the specified format to the current profile.
Sub CreateUnicodePST()
Dim myNameSpace As Outlook.NameSpace
Set myNameSpace = Application.GetNamespace("MAPI")
myNameSpace.AddStoreEx "c:\" & myNameSpace.CurrentUser & "\.pst",olStoreUnicode
End Sub
After creating additional storage in the Outlook profile users can move items for keeping them locally. Or you may consider creating a VBA script or COM add-in for doing that programmatically. See Walkthrough: Create your first VSTO Add-in for Outlook for getting started quickly.
I have created a script using powershell that uses open extensions, but I didn't know there was a limit to how many open extension types(MAPI properties) I could use. Now I have reached the limit and I can't create anymore mapi properties without deleting the properties I have made previously. But I am unable to figure out how to delete thos properties.
Thanks for your help!!! :)
I have figured out a way to see them with MFCMAPI but not to delete them.
MFCMAPI Interface with some of the properties I have created
Once you ran out of the 65k named properties limit (the total number of mappings in a given store), your mailbox is pretty much kaput. Once a guid/id is mapped to a property tag, it cannot be unmapped.
Creating a new mailbox is pretty much the only option.
I have Outlook plugin (written with Visual C++) which syncs contacts with DAV server (which acts as a replacement to Exchange). Personal contacts are fine but I don't know how to mimic the behavior of Global Address List (GAL).
Ideally, I want to create GAL folder the user will be able to search just like how it happens when Outlook is connected to Exchange. Is it possible at all? Perhaps, it's not possible with Outlook Object Model but still possible with MAPI? Can anybody point me in the right direction on how to start?
I need to support Outlook 2007+ but supporting only the newest versions (for this particular functionality) is an option, too.
Originally, I just synced the entire GAL folder and made it read-only so that Outlook stored the local copy of the entire GAL. This does not work well when the GAL size stretches to thousands of records.
You cannot do that - the address book provider can tell Outlook to only allow searches and never display the actual contents of the container.
You cannot do that with an Outlook folder unless you create your own MAPI store provider: then you can return any data you want depending on what the user is doing.
I have setup an Exchange search folder in users mailboxes under the 'Top of Information Store', and set the PR_ATTR_HIDDEN tag to TRUE.
This works for most of my Exchange 2010 environments. But, for some reason, on some servers (different environments) these folders will remain visible in Outlook for many users (not all).
Question here: what causes the hidden folders to be visible, even with the PR_ATTR_HIDDEN tag set to true.
Please advice :)
Thank you,
Daniel
You should create the folder in the root, rather than under "Top of Information Store" if you want to be sure the user never sees it. Using the PR_ATTR_HIDDEN property relies on the client to honor it, so it isn't fool-proof.
I am trying to add shared folder to MS Outlook 2010. When I do this with
file=>open=>open use's folder there is no issue. The folder appears but it is very uncomfortable to use mailbox like that. The main issue is that when I added additional mailbox I cannot access it. I get message
Cannot display the folder. Microsoft Outlook cannot access the specified folder location. The operation failed. An object cannot be found.
I think that I have not permission to the root folder of mailbox and this is why I cannot get to the folder(which is actually mailbox). unfortunately I cannot check if I have the permission.
Is there any way to add the folder permanently?
You will need to be an owner with Full Mailbox access to add that Mailbox to an existing or new Outlook profile (this is the most "permanent" way). Otherwise the owner of that Mailbox will need to use the Delegate options to share one or more of their default Outlook folders with you (sharing other non-default folders aren't possible). Once you access a shared folder it should be added to the Navigation module for that folder type so you can access it quickly later.
If the owner doesn't share as Full Mailbox or via Delegates, then you don't have access to any folders and cannot view them.