On Tue, Feb 01, 2005 at 04:45:41AM -0800, Jon Griffiths wrote: > Hi Luke, > > >i noticed that Wine has a mapi32.dll.so. > > The current MAPI code is very, very far from complete. I have been > implementing it in a bottom up manner (i.e. starting with the lower > level/utility functions and working up toward constructing the higher > order functions/objects). For example, there is no table support at > present (I have an IMAPITable implemenation of sorts, but its not > ready to be committed yet, pending cleanup, tests and thread safety > checks). Providing the message stores etc must then be built on top > of these objects. > > I believe Crossover Office runs MS Outlook so you may have more > success using the native dlls at this moment in time. ah ha, you're going to like this: i'm implementing exchange 5.5 server so the native dlls don't help :)
[hm, if crossover office runs ms outlook, that would mean that codeweavers enhanced the mapi code, hm...] what i am looking to do is to actually _implement_ a MAPI database, such that tables can be read etc. i haven't a clue what i'm doing, so am just copying the data from off-the-wire. but it will look very strangely familiar to anyone who has been working for some time with MAPI. i spent two hours yesterday mapping the data structures in mapidefs.h into emsabp.idl. they're identical (idl file sent to wine-devel list yesterday). > For the functions that are complete there is documentation in the > source: "make htmlpages" from the base Wine dir will format these > into readable html starting at documentation/html/index.html. thank you. > If your tests will rely on an exchange server being present it is > unlikely that you will be able to put them in the main wine tree, so > a stand alone program is likely the best solution. ha ha - i am _replacing_ exchange 5.5 server :) > As for sample programs, a quick google for "mapi sample program" and > you will get a bunch of links, including some freely downloadable MS > samples. ... i am kinda looking for something with a Makefile, compiles and links against Wine directly - under linux not windows. i am inclined to rip bits of code out of Wine (parts of header files so far) until i can get to grips with it. the thing is that by the time i am done, there will be some code that should just... integrate in a _very_ obvious manner into Wine's MAPI32.dll implementation, providing an interface to Nspi (emsabp.idl) and EcMapi (emsmdb.idl). ... it's just that at the moment i haven't really got a handle on this stuff: all i can say is i appear to be implementing MAPI tables and MAPI properties etc. but don't know what those really are. l.