[IronPython] Stubbing out a MAPI DLL

Sumit Basu sumitb at microsoft.com
Wed Apr 6 20:52:07 CEST 2011

I'd suggest using Exchange Web Services instead of MAPI - in my experience, I've found MAPI to be very tricky to use*, and small errors from an independent program using MAPI can cause painful problems (such as Outlook no longer working!).  I've used EWS from IronPython/Sho before and found it to be quite a smooth experience.  You'll have to use wsdl.exe to generate the stub library from your exchange server, then once you do, you can follow the many EWS C# examples on the web and easily translate them to IronPython.


*Disclaimer - I'm not a COM expert, so if I knew what I was doing, perhaps I wouldn't have run into those problems :)

-----Original Message-----
From: users-bounces at lists.ironpython.com [mailto:users-bounces at lists.ironpython.com] On Behalf Of Daniel D.
Sent: Tuesday, April 05, 2011 5:51 PM
To: Discussion of IronPython
Subject: Re: [IronPython] Stubbing out a MAPI DLL

You could also wrap COM objects (Redemption is a COM object) into cPython through it's Windows api. I wrapped other COMs into cPy on windows before, just never Redemption. Yet, this way you may end up making it work with cPython.


On Tue, Apr 5, 2011 at 17:45, Daniel D. <dvdotsenko at gmail.com> wrote:
> There are very few good MAPI libraries. The only one that worked more 
> or less reliably for me is this Redemption 
> (http://www.dimastr.com/redemption/). Because it's so difficult to 
> find a MAPI lib for your language, it's easier to wrap Redemption into 
> into a .Net app and wrap IronPython scripting into that on the other 
> side.
> Trial version of Redemption prepends "UNREGISTERED" to subject lines 
> on email objects it creates and nags you every time you start Outlook 
> / MAPI client. Yet, it's a good place to start if it will work for 
> you.
> Daniel.
> On Tue, Apr 5, 2011 at 13:59, Mike Driscoll <mdriscoll at co.marshall.ia.us> wrote:
>> Hi,
>> I received a request recently to create a Python application that can 
>> be set as a default email client so that we can use the "Send To Mail Recipient"
>> functionality found in MS Office, Adobe products, etc to send the 
>> mail to our Zimbra web client.
>> After much research, I think I need to stub out some kind of MAPI 
>> implementation and make it into a DLL. Does anyone have any knowledge 
>> of how to do that? I thought I might be able to use IronPython for 
>> this since I couldn't find a good way to do it with normal Python. Thanks a lot!
>> - Mike
>> _______________________________________________
>> Users mailing list
>> Users at lists.ironpython.com
>> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
Users mailing list
Users at lists.ironpython.com

More information about the Ironpython-users mailing list