More Outlook documentation leaks out into the wild

Posted by admin | Uncategorized | Monday 15 March 2010 1:28 pm

Its been years since I’ve done any serious Outlook development but I still keep a lookout for interesting stuff about Outlook and MAPI.For example the link below describes the nickname-cache.

http://blogs.msdn.com/stephen_griffin/archive/2010/03/15/the-nickname-cache.aspx

Customizing Outlook can be a nightmare. For example there are two basic ways to create an Outlook custom form. The first is to customize the standard email form which is OK for some kinds  of  in house  IT applications but are otherwise not very robust. The other is to use MAPI’s Form Server technology which involves creating a seperate application which Outlook communicates with.

I was once deeply involved with a MAPI Form Server which was quite a frustrating experiance because so much of Outlook’s behaviour is not accessable. The Outlook form I was developing needed to look for the most part like Outlook’s standard email form but with a custom Active X control managing the message body instead of a text box (eg Trident based HTML text editor, Word,  or a richedit control) that Outlook used.

While MAPI Forms give much more control and stability over the resultant custom form it is necessary to write all of the UI yourself. I have never understood why Microsoft did not write a bunch of ActiveX controls that allowed MAPI forms to reuse  Outlook UI such as the message header or toolbars. They could have arranged things so that ActiveX controls could only be used when used in a MAPI form server.

An excellent example of a part of the Outlook UI that should allowed reuse are the text boxes used to edit recipients within the Outlook email form. At first these controls seem to be simple rich edit controls except that they do useful things like the nickname list processing mentioned in the link above. They also treat resolved recipients as single entities which are protected from being edited and can be dragged and dropped between the ‘To’, ‘Cc’ and ‘Bcc’ edit boxes.

All this needs to be emulated by a third party form and updated everytime a new version of Outlook is released. The nearest that Outlook gets to reuse is the Address book which can be launched to select recipients. Another problem is that because Outlook uses it own version of MAPI so if Outlook stops using a MAPI function then the function can degrade overtime.

For example there is a MAPI function that provides a property page from message store providers. This is used on older versons of Outlook to provide additonal pages in the message properties property sheet in the standard email form. This same UI was available via MAPI to third party form servers. When Outlook changed and moved more message properties into the newer message options UI however then this part of MAPI became unreliable.

I don’t think anything is going to change because I suspect that most of the extensions to Outlook have already been written or will be Microsoft extensions which don’t suffer from these problems.

It’s been a while…

Posted by admin | This blog | Monday 15 March 2010 12:32 pm

It’s been a while since I last posted anything here but I hope to add more posts in the near furture…

Some big changes have occured since I last blogged. After 20 years of living and working as software developer in the London and the surrounding area I have now moved back home to Northumberland. I still have my flat in Harrow at the moment so I can relocate back to London if I want to.

It took a while to settle back to my home town but its generally been OK. I’m now work for Sage which is a Software company based just outside of Newcastle. It a complete change of  problem domain for me as they do accounts software.

Although my first job in London was with a small software house that tried to produce a rival for Sage in the early 1990s I wasn’t involved in the core accounts bit. I’ve been used to working with telephony or multi media in form for or another for the last 20 years.

One of my friends fron the Avaya days, Gwyn,  is also now working for Sage also - although its for a team that doesn’t do the accounts stuff.

Well thats it for now but stay tuned as they say.