• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 3384
  • Last Modified:

Running multiple instances, MAPI error

I'm running Eudora 6.2.12 and Win XP Pro.

I have two instances of Eudora running, with separate data files and mailboxes.

Periodically, I get a Eudora error message to the effect of " Eudora has detected multiple running instances of Eudora....MAPI action was unable to be completed....Close one application and repeat MAPI action"....

No, I have requested any MAPI action and have checked the Eudora MAPI action to never on both Eudora applications.

How can I get rid of this error message?

  • 6
  • 3
1 Solution
It does sound like another application is calling the Eudora mapi32.dll file despite the fact that you have told Eudora not to offer it.

The way that Eudora works in offering the MAPI interface (or not) to other applications is that it replaces the Outlook MAPI.dll with its own version, calling into Eudora and not Outlook. Everytime you start up Eudora, if the option in Eudora is set to "use MAPI when Eudora is running", Eudora creates a backup of mapi32.dll in C:\Windows\system32\mapi32back.dll  (mine is 110Kb on XP SP1) then overwrites mapi32.dll with its own eumapi32.dll (which on Eudora is 145Kb). When Eudora is closed, it reverses the process.  Why am I telling you this when you do not use this option? It may be that running two copies, at some time in the past has gotten them confused. Can you please look for files starting mapi on your computer and tell us the size of them all compared to your copy of eumapi32.dll

Eudora also adds a file mapi.dll into the windows system directory, but I am not sure why since there is not normally one present on XP.

The only other use of MAPI as far as I am aware is in the opposite direction i.e. when Eudora tries to import stuff from Outlook, it swaps back the Eudora mapi32.dll for the Outlook (default Windows) mapi32.dll and (I think) uses that.

I am puzzled as to just what has happened here, it does sound like the original Outlook Mapi32 has gone walkabout.
ddrakewiAuthor Commented:
Thanks for the suggestions.

I have
eumapi.dll   81 kb,        in my Eudora documents folder
hmmapi      38                   in my windows\system32\dllcache
sfmapi          23                    in the same sub directory
mapi.dll         508                   in windows\system32
sfmapi.dll         23                       in windows\system32
YahooYmailtoCLass  null                in windows\occache
ymmapi.dll        168kb                    in  program files\yahoo\common
ymmapi.dll         168 kb               in   program files\yahoo\installs\hold
eumapi.dll            81 kb            in   program files\qualcomm\eudora
msgmapi.dll          22kb in program files\netspace
hmmapi.dll   38 kb in program files\internet explorer

Hope this helps
OOPs, my mistake, I should have been clearer. It is principally *mapi32.dll (the 32 is fairly critical). Can you do the same search for *api32.* please. Also what version of Windows operating system are you running?
Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

Jeesh, I should read previous posts, you already told me the OS - delete that bit of the question :-[
Additionally you might care to make the check on the size of mapi32.dll  in Windows\system32 with:
a) NO Eudora running.
b) one Eudora running.
c) two Eudora runniing
if you don't mind :-))
ddrakewiAuthor Commented:
OK....searching for *api32.* gives me quite a few...
 26 in all, ranging from advapi32.dll to wtsapi32.dll

re mapi32.dll

No Eudora running    
          110 kb--windows\system32
            135 kb--program files\common files\system\msmapi\1033

Original Eudora running
          110 kb--windows\system32
          135 kb--program files\common files\system\msmapi\1033

Two Eudora's running
     same as with one running

These are not the Eudora mapi32.dll files, they are the original Outlook ones.
I have now replicated the problem on my windows XP with Eudora I ran two copies (one dummy, containing nothing), turned off "use mapi server" on both and then opened MSworks word processor. I typed one word into it and did "file, send". Instantly got the same message as you. I was puzzled for a while, but now I understand what is happening, though the dilemma of which Eudora a Mapi client should talk to seems unresolvable at the moment.
What I EXPECTED to happen was that if Eudora did not put in it's mapi32.dll file, then the original one would be called and Outlook opened when you hit "send" in MSworks word processor (or any other application  that is a MAPI client).
It seems that the system is more clever than that. Indeed it DOES go look at the mapi32 in the system directory. However, what then happens is that it goes to look in the registry to see what is the default mail client.

In my case the application is WksWP.exe and looks at the following keys (intermingled with some "not found" keys):
HKLM\Software\Clients\Mail\(Default)      SUCCESS      "Eudora"      
HKLM\Software\Clients\Mail\Eudora      SUCCESS      Key: 0xE25A4C78      
HKLM\Software\Clients\Mail\Eudora\DLLPath      SUCCESS      "C:\PROGRA~1\Qualcomm\Eudora\EuMAPI32.dll"      
It then loads C:\PROGRA~1\Qualcomm\Eudora\EuMAPI32.dll and uses THAT to try to access Eudora.  AAARRRRGGGGHHHH!

So, I learn something each day! The upshot is that if you want Eudora to be your default mail client for other applications to send mail you cannot run two copies of it. At least I don't know how you can run two copies of it. I guess what happens is that EuMAPI32.dll running in the address space of WksWP.exe (or some other application), tries to locate a copy of its favourite mail program, Eudora. Finding two copies it does not know how to proceed and therefore fails.
I tried renaming a copy of eudora.exe to something else and running that, to no avail.
Even Qualcomm has no suggestions, (look at http://www.eudora.com/developers/mapi.html and "What happens if I'm running multiple copies of Eudora at the same time?")

So, sorry, I have no suggestions other than to remove Eudora as your default mail application or NOT to try to use MAPI from other applications while you have two copies of Eudora running.  It might be worthwhile complaining to Qualcomm that the option NOT to use Eudora as a MAPI server does not work on Windows XP (and maybe others).

It would be interesting to know what you want to happen when you click on an application to send mail when there are two copies of Eudora running. Do you want it to pick randomly which Eudora to use to send the mail, or were you expecting the "first started" or something like that?

Sorry to have put you to the effort of analysing the .dlls to no avail. At least now we both know the score. ;-)
I just noticed in the original question that you say that you have NOT requested any MAPI actions. I am fairly sure that some application IS requesting MAPI actions. If you want to find out which application is causing that MAPI action, follow the instructions below.

You need Administrator privileges to do the following. Use the free utility http://www.sysinternals.com/ntw2k/source/filemon.shtml which is trivial to "install" (just unzip the files to some directory).
Ensure both copies of Eudora are running. Execute filemon.exe. Then in the filter window (if not immediately available do "options", "Filter/Highlight") type into "include" box the following: C:\PROGRA~1\Qualcomm\Eudora\EuMAPI32.dll (or whatever your path is to the Eudora installation directory and it's MAPI .dll). Leave other fields blank but check all the boxes.

Then wait! (until you get the annoying window up). Then switch to filemon window.

Here is a typical output when MSWorks tries to do a mapi action:
12:36:04.538      WksWP.exe:3112      QUERY INFORMATION      C:\PROGRA~1\Qualcomm\Eudora\EuMAPI32.dll      SUCCESS      Attributes: N      
(lots of lines like this).

The second column is the originating executable which is trying to carry out a mapi action. You may then have to search on your machine for the executable to see which application it is.  Best of luck, I hope that your configuration is sufficiently similar to mine for this strategy to work.
ddrakewiAuthor Commented:
So far, I've captured both Firefox and Yahoo Desktop Search.

I'll forward the information to Eudora and hope they can address my concerns.
I am glad that the test works. I don't know Yahoo Desktop Search, but normally Firefox will only call MAPI if you click on a "mailto:" uri or you (for example) have added a plugin to report on the number of email messages waiting.
"mailto:"s  are becoming less and less common because the spammers use them to harvest email addresses from website. Anyway, if you want Qualcomm (Eudora) to do something about it, you need to explain to them what it is that you want i.e. NO application respond, one of the two Eudoras, another email application etc.  
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

  • 6
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now