John Howard - Senior Program Manager in the Hyper-V team at Microsoft

Senior Program Manager, Hyper-V team, Windows Core Operating System Division.

Blogs

Only SMTP, Outlook and Exchange Gurus need read further

  • Comments 8
  • Likes

Iif you don't fit into the subject line category please switch off now - I just know you won't know the answer (no offence, of course). I've been an Exchange dev for years (although a little rusty now) and still don't know. However, read-on if you want to, or have some educated guesses and vaguely understand the problem I'm hastily attempting to explain.... This is the "deep techie" question alluded to in my previous blog post. I'm using CDO from Windows Server 2003, not CDOEx (the superset COM component) supplied on Exchange 2000/2003. I want to send an email using SMTP (rather than Exchange) and have Outlook pop up the email in the reminders window like below:

The above reminder was generated simply sending an email internally from an Exchange account to myself, with the message flag turned on. If you go back to an old "un-crippled" version of the Exchange Explorer from the Exchange SDK (previously known as the WSS/Web Storage System SDK), take a look at the property tags/attributes for this message, you notice a few MAPI related fields are set for reminders. Interestingly they're not MAPI property tags though, so I assume are supported tags.  (NB - Don't try this using anything later than a Dec 2001 WSS Explorer as it's crippled and you won't be able to see MAPI tags.)

 

Property tags such as http://schemas.microsoft.com/mapi/remindernexttime, reminderset, remindertime. So the question is, what (if you can) do you set in the X- or other bespoke SMTP message header fields to get Exchange/Outlook to recognised these property tags. I just can't work it out (and am guessing it's not possible). Yes, I can do this using native MAPI, but it kind of defeats the point of what I'm trying to achieve. Anyone on the Exchange Dev team listening???

Ta!

Comments
  • a quick internet email to myself with a flag set for followup on the 6th shows a couple of extra headers:

    Reply-By: Sun, 6 Nov 2005 22:30:00 -0000
    X-Message-Flag: Follow up

    I've also tried to do a similar thing with the iCalendar format but couldn't find a way of posting into the calendar

  • d'oh - just read the earlier post and the extra headers are added by the SMTP section although it uses a custom MESSAGE_FLAG - don't know if this matters? Do you get these in your test messages (I'm not clear exactly what the problem is!)

  • Paul - yes, got both those headers in the email script from the earlier post.

    Outlook shows different behaviour between profiles configured for SMTP and Exchange.

    If you construct a message in Outlook with the flag and follow up time set, sending it using a profile configured to send using SMTP, the reminders dialog will _not_ be triggered. If you do this using a profile configured for Exchange, the reminders dialog _will_ be triggered.

    If you take this to a programmatic level, yes, I can use CDOEx (but only on Exchange servers which is the critical part), add a line which sets http://schemas.microsoft.com/mapi/reminderset to 1. This will cause outlook to display the message in the reminders window (I even liked the way you don't need to set the reminder time - it defaults to "now").

    However, to be generic and allow the script to run from a non-Exchange box, or even another Exchange Server where the senders mailbox isn't homed, I need to move back to SMTP (although HTTP/WebDAV may also be a solution, as would CDO 1.21, but lets not go there....).

    I've already seen that Outlook using SMTP doesn't cause the reminders windows to fire, but maybe there's an "undocumented" trick along the line. To support setting something equivalent to the web-stores schemas.microsoft.com/mapi/reminderset in the SMTP message requires some translation and property promotion in the Exchange Store when picking up and delivering. Is there such an X- header which gives this promotion?

    Hope that makes sense - is a difficult problem to describe consisely!
    Cheers,
    John.

  • Maybe I'm completely wrong...but doesn't the whole reminder thing work because Exchange is using the so called "defered delivery" messages, which are stored in the non-visible part of the user mailbox...? That's also the reason why reminders only work in default folders(e.g. calendar, etc) and not in custom calendars, etc.

  • Hi Christian
    Nope, tried that. Nothing to do with defered delivery as far as I can see. The reminders are definitely attributes/properties of the items themselves (including calendar items with reminders). Yes, they are non-visible in that they are attributes against items in the webstore which aren't exposed directly through the user interface in Outlook, for example, but are seen through the reminders window.

    FWIW - I created a test calendar folder in Outlook, used Control-6 to get the full tree view, selected the custom calendar and created an entry in that folder with a reminder before the current time. The reminders window did pop up with that entry.

    Also tried this with a custom folder containing mail/post items. You can't mark a post item with a reminder, but if you create a mail message in that folder with a reminder set, Outlook (2003) will pick up that item in the reminders window.

    Hence... still stuck.

    Anyone else have any ideas? Outlook seems to be behaving impecably - I'm more interested in finding out why Exchange and the SMTP engine in its property promotion aren't. I'm even contemplating raising a case with MS support myself :-)

  • That'a an excellent information and I would like to bring it to your notice, though its on differnt notes. MS is doing excellent job in India and this step will further improve and strengthen its image among developers. Please read whole story on http://efytimes.com/fullnews.asp?edid=7671&magid=13

  • Did you ever resolve this issue?

  • Morgan - no, unfortunately not - I gave up trying a long while back though.

    Thanks,

    John.

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment