VBA Outlook - Get "last modified by" using MAPI - vba

I am using MAPI to get details of email into my database. Now it seems that outlook captures Last Modified time. But I am not able to find any helpful articles on how to capture the "last modified by" in outlook.
I need to know how I can achieve this using VBA Outlook with MAPI or if there is any other way of getting this done.

Extended MAPI can only be used from C++ or Delphi. There is no way you can do that from VBA.
Why do you need to use MAPI? Have you looked into using the Outlook Object Model and the MailItem.LastModificationTime property in particular?

Related

Outlook VBA - How to get email item from user input

Although Im quite experienced with Excel VBA, Im not so much in regards of Outlook VBA (started yesterday, literally), so Im uncertain on how to get this simple task accomplished:
I created some coding to get a specific e-mail from the Inbox and then parse it and forward - that part is all good and well. Currently the code autodetects and retrieve the e-mail item using a set of parameters to filter through the Inbox. However, now I need to expand this code so that it can work with any e-mail item, and not only with that specific e-mail.
My idea is to get the user to input which e-mail item he/she wants to parse and forward, instead of getting the code to look in a specific place. How can that be done? The user input methods that I use regularly are InputBox (which returns a string) and GetOpenFileName, none of them suitable to pointing to a mail item within Outlook.
I thought about making the code work with the currently open e-mail item, but often the users have several e-mail items opened at once - forcing them to leave only one open for the code to work is not viable. Also, the code will be ran by people who have little to no IT expertise, so requesting things such as paths is also not an option. Is there any method for this?
I figured that working with Active MailItem is the way to go, as #niton suggested as well. I used a coding very similar to the one in this post, although I had to develop the handlers in case the user has other types of Objects active at the moment (AppointmentItems, for instance) or have multiple items selected. Final solution wasn't that much elegant - I was wishing for some sort of system input box where the user could point to the mail or something, but this works.

MS Outlook MailItem as MIME message

I have been looking for some time for a way to get an Outlook MailItem as a MIME-Message, but without much luck so far.
What I found is this here: http://www.office-outlook.com/outlook-forum/index.php/m/600993/, which would mean that I would either have to use a third party library or get into Extended MAPI.
Is there no other way to get a complete MailItem as MIME in Outlook 2007 with VBA?
Yes, it is either Extended MAPI (IConverterSession) or Redemption (RDOMail/SafeMailItem.SaveAs).
You can of course explicitly built the MIME message in your code one property at a time...

livelink mapi outlook objId

I am searching for a way to get the livelink objId from a MAPIFolder object (Outlook VBA).
I can get the path but its useless when the MAPI comes from favorites.
I look at this Is there a list of IDs for the Outlook MAPI namespace? but that's not really helping.
I searched in each variable of MAPIFolder, looked at xml values, and I don't know what to do, where else to look.
(Are there any livelink/Outlook developers?)
I don't have any direct experience with automating LiveLink's Outlook Integration, but if their solution is MAPI Message Store Based (like our competing DMS integration product), your best bet would be to install OutlookSpy and look for a named property containing the livelink ID.
There doesn't have to be one, but it is the most straightforward approach to support third party automation/integration.

Getting messageID from email in Outlook VBA 2003

Is there a easy way to get the current shown (preferably selected) message-ID via VBA ?
without having to buy Redemption or some other package..
I need to message ID so I can make a link to a web-application that reads the mail and does some other stuff with it
Can't seem to use MAPI or PropertyAccessor in outlook 2003..
Do you mean the unique ID for the message? Try the EntryID Property:
ActiveExplorer.Selection.Item(1).EntryID
FYI PropertyAccessor was added in Outlook 2007, you wouldn't see it in 2003.

Outlook VSTO attach meta data

I am writing an Outlook addin that inserts content into an email, and I have a emailSent event that I would like send an event back to my server letting me know some content was shared.
Is there a way to attach some meta information to the email (or the word doc, which is what you are creating in outlook) so that I can grab that meta info so I can send it back to my server.
Right now, the only way I think I can do it is to search through the email on the send event looking for my content with regex and pull out the info i need, but that seems cumbersome, and also means I need to run the regex for every email sent, even when they haven't added my content.
There is the concept of MAPI user properties, which you can add to an Outlook item. Since Office 2007 the object model allows access to them. If your add-in must run also with older Outlook version, you should recurr to use Redemption (which I prefer also for higher office versions because it has more flexibility, albeit a greater footprint in distribution).
See UserProperties Interface on MSDN.