[AccessD] DoCmd.SendObject hangs MS Access app on a PC without Outlook Express or Outlook...

Gustav Brock gustav at cactus.dk
Fri Feb 7 13:45:00 CST 2003


Hi Shamil

> THNX Gustav!

> I tried the code from your link but it DIDN'T work for Outlook Express
> :(   (with MS Outlook Express being default main client and with Outlook
> installed but NOT being default mail client)

> Did you try this code with The Bat mailer?

I'm having some trouble with that as I don't have Visual Basic.
However, I did a dirty port to A97 and found that at least this
declaration is failing:

Private Declare Function MAPISendMail Lib "MAPI32.DLL" _
    Alias "BMAPISendMail" (ByVal Session&, ByVal UIParam&, _
    Message As MAPIMessage, Recipient() As MapiRecip, _
    File() As MapiFile, ByVal Flags&, ByVal Reserved&) As Long

as the mapi32.dll of The Bat doesn't seem to know BMAPISendMail.

If you have a working port to A97 feel free to send it to me for
testing.

/gustav


>> This link tells a bit more on MAPI and that key:
>>
>>   http://www.thescarms.com/VBasic/MapiEmail.asp
>>
>> /gustav
>>
>>
>> > Found another key which you could check out:
>>
> HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\OptionalComponents\MAPI\I
> nstalled=1
>>
>> >>  .. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Messaging
>> >>   Subsystem\OleMessaging=1
>>
>> > I do not have this key.
>> > Only this:
>>
>> >  .. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Messaging
>> >   Subsystem\MSMapiApps\outstore.dll:Microsoft Outlook
>>
>> > Further, The Bat claims to install mapi32.dll to activate MAPI.
>> > This tells me that if mapi32.dll is present, MAPI may work.
>> > If it is not present, MAPI is not installed.
>>
>> > I may be wrong - I'm no expert in this. I usually install my own mail
>> > tool which shortcuts this mess.
>>
>> > /gustav
>>
>>
>> >> Could you please check does your PC with The Bat mailer have this
>> >> system Registry key, which Charlotte mentioned?:
>>
>> >>  .. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Messaging
>> >>   Subsystem\OleMessaging=1
>>
>> >>> DoCmd.SendObject does not require Outlook xxx.
>> >>> Many other mail clients will do.
>> >>>
>> >>> I use this on a machine with The Bat mailer but no Outlooks installed.
>> >>>
>> >>> /gustav
>> >>>
>> >>>
>> >>> > Do you know any simple methods to check that a PC has Outlook
>> >>> > Express or
>> >>> > Outlook installed and activated to not have MS Access app hanging on
>> >>> > execution of DoCmd.SendObject? (a customer reports that - I can't
>> >>> > check
>> >>> > is it true or not because all my PCs have Outlook Express or
>> >>> > Outlook - simple way to deactivate them for testing purposes?)...




More information about the AccessD mailing list