mapi

Best way to access Exchange using PHP?

I'm writing a CMS application in PHP and one of the requirements is that it must be able to interface with the customer's Exchange server. I've written up this functionality a few times before and have always used WebDAV to do it, but now I'm leaning away from that. I will be running the site on IIS OR Apache (no preference) on Windows...

MAPI and managed code experiences?

Using MAPI functions from within managed code is officially unsupported. Apparently, MAPI uses its own memory management and it crashes and burns within managed code (see here and here) All I want to do is launch the default e-mail client with subject, body, AND one or more attachments. So I've been looking into MAPISendDocuments and ...

Finding all messages with a given PR_SEARCH_KEY

I need to query an Exchange server to find all messages having a certain value in PR_SEARCH_KEY. Do I have to open every mailbox and iterate through it or is there a faster solution? Edit: This is for a program that needs to prepend something to the subject line of all copies of a message I got through a journal mailbox. ...

How to find out the distinguished name of the information store to feed to IExchangeManageStore::GetMailboxTable?

There is a Microsoft knowledge base article with sample code to open all mailboxes in a given information store. It works so far (requires a bit of copy & pasting on compilers newer than VC++ 6.0). At one point it calls IExchangeManageStore::GetMailboxTable with the distinguished name of the information store. For the Exchange 2007 Tria...

Creating IDL for MAPI-MIME conversion.

I'm trying to create the IDL for the IConverterSession interface and I'm confused by the definition of the MIMETOMAPI method. It specifies the LPMESSAGE pmsg parameter as [out] yet the comments state its the pointer to the MAPI message to be loaded. Its unclear to me whether the functions allocates the MAPI message object and sets the p...

How do I synchronize the address book in my app using MAPI?

Dear Lazyweb, The system I'm working on contains an address book. I am looking for sample code that will synchronize addresses with the current users address book through MAPI. I need two-way sync. If you know of any open-source library with easy to use functions for this, I'd be glad to hear about it. If you know of a library that is ...

Reading the Exchange server time via MAPI

I'd like to calculate the age of the messages in an Exchange mailbox to make sure they sit there for at least a minute before our program (C++, MAPI) processes them. This way the spam filter we use should have enough time to do its job. Because the time on the PC where our program runs might be different from the time used by the Exchan...

CDO: Outlook contact sync - How to identify the correct object to sync with?

I have a web application that syncs Outlook contacts to a database (and back) via CDO. The DB contains every contact only once (at least theoretically, of course doublets happen), providing a single point of change for a contact, regardless of how many users have that particular contact in Outlook (like Interaction or similar products). ...

Outlook PropertyFrom MAPI Schema Property ID

I am looking to get the actual property name from a MAPI schema property. I'm obtaining the MAPI Schema property "http://schemas.microsoft.com/mapi/proptag/0x67AA000B" but I would like to know what field this corresponds to (I.E. Anniversary, BusinessAddress, etc). Any insight would be appreciated. ...

MAPI: Format of PR_SEARCH_KEY

Does anyone know the format of the MAPI property PR_SEARCH_KEY? The online documentation has this to say about it: The search key is formed by concatenating the address type (in uppercase characters), the colon character ':', the e-mail address in canonical form, and the terminating null character. And the exchange docum...

Outlook Redemption : GetNamesFromIDs

Hello -- I'm trying to get all property names / values from an Outlook item. I have custom properties in addition to the default outlook item properties. I'm using redemption to get around the Outlook warnings but I'm having some problems with the GetNamesFromIDs method on a Redemption.RDOMail Item.... I'm using my redemption session to...

Using MAPI w/ C++, how can I open another user's Inbox?

I'm looking to write an automated monitor script to programmatically retrieve information from another user's Exchange 2003 inbox. I have working C++ code to log into MAPI and connect to my own inbox. I can also use the Control Panel->Mail applet to configure another user's mailbox into my profile, and my code can access that way. How...

Transfer mail to other mail box

I am working on an application where i need to transfer mails from a mailbox to anoter one.I can not send these mails using smtp because this willchange the header information .I am using C# and out look api to process mails . is thre any way i can transfer mails to other mail box without changing mail header. ...

Download location for MAPI33.dll?

From where can I download MAPI33.dll. I got the link http://www.mapi33.adexsolutions.com/ from a site but it seems this is not correct. ...

Has anyone had success getting PR_DEFAULT_STORE using MAPI under Windows Mobile?

The following piece of test code runs under Windows Mobile. It's objective is to seek out the default message store. This is so that I can get the proper account name for programmatically compiling an email. IMAPISession *mapiSession; HRESULT hr = S_OK; MAPIInitialize (NULL); IMAPITable *msgTable; SRowSet *pRows; IMsgStore *msgStore;...

What is the best way to get started using MAPI?

I've been spending some time hacking away at MAPI for the purpose of creating tools for process automation on both server and client. Most of the resources I read online are either short on details and/or examples or full of conflicting information compared to other sources. Assuming I have an understanding of C++, COM and .NET, what p...

MAPI, UAC & .NET

I've used MAPI to create emails with attachments from my application and it works very well on XP and Vista (without UAC). Of course, if you have UAC enabled, it just doesn't work (though it gives no errors, and doesn't prompt the user for permission to continue). I've done a bunch of reading and have found a lot of differing ideas: ...

Modifying Microsoft Outlook contacts from Python

I have written a few Python tools in the past to extract data from my Outlook contacts. Now, I am trying to modify my Outlook Contacts. I am finding that my changes are being noted by Outlook, but they aren't sticking. I seem to be updating some cache, but not the real record. The code is straightforward. import win32com.client import ...

Use Exchange Web Services to enumerate all the properties(mapi properties?) on a mail item

I'm trying to troublshoot a problem with some mail items in on an Exchange 2007 server. I've been able to determine there is something wrong with I think a reciepient property, but I'm not sure, so I'd like to just enumerate all the properties on a message on a bad one and compare it to a good one. I would also settle for a MAPI or Web...

How to send mail on windows (other than MAPI)

When viewing the MSDN MAPI documentation page it says the API is now deprecated. If that's the case, what is the suggested API for sending mail these days? http://msdn.microsoft.com/en-us/library/dd296734.aspx Edit: Thanks for all the suggestions, the managed route isn't suitable for me as we're using MFC. ...