VpeIsMAPIInstalled

<< Click to Display Table of Contents >>

Navigation:  E-Mail Functions >

VpeIsMAPIInstalled

Previous pageReturn to chapter overviewNext page

[Windows platform only; not supported by the Community Edition]

Checks the machine if MAPI is installed. This property is obsolete, use the property VpeGetMAPIType instead.

int VpeIsMAPIInstalled(

VpeHandle hDoc

)

VpeHandle hDoc

Document Handle

Returns:

Constant Name

Value

Comment

VMAPI_NOT_INSTALLED

0

MAPI is not installed

VMAPI_INSTALLED

1

MAPI is installed

VMAPI_UNSURE

2

unsure (obsolete, was for 16-bit version)

Remarks:

In case of an error, LastError is set.

 

There are some problems with MAPI. Some vendors of MAPI clients (e-mail software) do not set up the registry correctly. The problems are sometimes very heavy and difficult to solve. In the following we list the problems we heared about:

 

32-bit VPE on Win-32 (9x / ME, NT >= 4.0 / 2000 / XP) platform

MAPI clients are not correctly registered. The guideline is, that the following entry must be present in the registry for all 32-bit platforms listed above:

 

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows Messaging Subsystem \ MAPI = 1

 

But for NT <= v4.00 there has to be the following entry in the WIN.INI in the section [Mail]:

[Mail]

MAPI = 1

 

VPE checks for all conditions above, but some MAPI clients do not setup the registry as they should.

 

To cure the problem listed above, we implemented the following solution:

VPE checks for the guideline rules first and returns VMAPI_INSTALLED if they are matched. Otherwise VPE will check for a WIN.INI entry (yes!) which is made by some clients in the [Mail] section:

[Mail]

MAPIX = 1

 

If this entry is found, VPE will return VMAPI_UNSURE, because it is not 100% sure that a 32-bit MAPI client is really installed. Otherwise VPE will return VMAPI_NOT_INSTALLED. If you are sure there is a working MAPI client on the machine, but the registry key is missing, you can add it manually or let this perform by your setup software.

 

The e-mail toolbar button and the method MailDoc()

The e-mail button will be enabled for the condition VMAPI_INSTALLED and will be disabled (grayed) for the conditions VMAPI_UNSURE and VMAPI_NOT_INSTALLED.

 

You have the chance to re-enable the e-mail button after calling OpenDoc() , if you are sure a working MAPI client is installed (see VpeEnableMailButton).

 

The method MailDoc() will work for all conditons (i.e. it is not blocked), but for VMAPI_NOT_INSTALLED and VMAPI_UNSURE you call it on your own risc.