@@InternetandE-mail.MAPI
<GROUP InternetandE-mail>
<TITLE MAPI>
<TOPICORDER 100>
--------------------------------------------------------------------------------
@@InternetandE-mail.MAPI.EJclMapiError
<GROUP InternetandE-mail.MAPI>
<TITLE EJclMapiError>
<TOPICORDER 100>
--------------------------------------------------------------------------------
@@InternetandE-mail.MAPI.TJclEmail
<GROUP InternetandE-mail.MAPI>
<TITLE TJclEmail>
<TOPICORDER 200>
--------------------------------------------------------------------------------
@@InternetandE-mail.MAPI.TJclEmailRecip
<GROUP InternetandE-mail.MAPI>
<TITLE TJclEmailRecip>
<TOPICORDER 300>
--------------------------------------------------------------------------------
@@InternetandE-mail.MAPI.TJclEmailRecips
<GROUP InternetandE-mail.MAPI>
<TITLE TJclEmailRecips>
<TOPICORDER 400>
--------------------------------------------------------------------------------
@@InternetandE-mail.MAPI.TJclSimpleMapi
<GROUP InternetandE-mail.MAPI>
<TITLE TJclSimpleMapi>
<TOPICORDER 500>
--------------------------------------------------------------------------------
@@EJclMapiError
<GROUP InternetandE-mail.MAPI.EJclMapiError>
Summary:
  Exception class for MAPI-errors
Description:
  The exception class that is raised when an MAPI error occurs
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@EJclMapiError.ErrorCode
Summary:
  MAPI error-code
Description:
  The error-code for which the exception is raised.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclMapiClient
<GROUP InternetandE-mail.MAPI>
Summary:
  MAPI-Client record
Description:
  TJclMapiClient shows information on each installed and registered MAPI-Client.
Donator:
  Petr Vones
@@TJclMapiClient.ClientName
  Name of MAPI-Client
@@TJclMapiClient.ClientPath
  Path where MAPI-Client is located
@@TJclMapiClient.RegKeyName
  Registry key for MAPI-Client
@@TJclMapiClient.Valid
  Validity of client (i.e. does it actually support Simple MAPI calls?)
--------------------------------------------------------------------------------
@@TJclMapiClientConnect
<GROUP InternetandE-mail.MAPI>
Summary:
  MAPI-Client type
Description:
  TJclMapiClientConnect determines the type of connection to make with a MAPI-client.
Donator:
  Petr Vones
@@TJclMapiClientConnect.ctAutomatic
  If Simple MAPI is installed it will be used, otherwise the client library will be used directly.
@@TJclMapiClientConnect.ctMapi
  Always use the MAPI library.
@@TJclMapiClientConnect.ctDirect
  Always use the client library (Simple MAPI is not required).
--------------------------------------------------------------------------------
@@TJclSimpleMapi
<GROUP InternetandE-mail.MAPI.TJclSimpleMapi>
Summary:
  Simple MAPI class.
Description:
  TJclSimpleMapi is the Simple MAPI interface class.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.ClientLibLoaded
Summary:
  Checks if a client library has been loaded.
Description:
  ClientLibLoaded determines if a client library has been loaded.
Result:
  If a valid client library has been loaded, the function returns True, otherwise
  it returns False.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.LoadClientLib
Summary:
  Loads a client library.
Description:
  LoadClientLib loads either the Simple MAPI library of the currently selected
  library (set by the SelectedClientIndex property), depending on the
  ClientConnectKind property.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.UnloadClientLib
Summary:
  Unloads the client library.
Description:
  UnloadClientLib loads the client library currently loaded (if any).
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.AnyClientInstalled
Summary:
  Checks if MAPI clients are installed.
Description:
  AnyClientInstalled determines if any MAPI clients are installed.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.ClientConnectKind
Summary:
  Type of connection to make.
Description:
  ClientConnectKind allows you to choose the type of connection you want, Simple
  MAPI or direct library calls. When you set this property to ctAutomatic, Simple
  MAPI will be used when installed, otherwise it uses direct library calls.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.ClientCount
Summary:
  Number of clients found
Description:
  ClientCount shows the number of client libraries found.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.Clients
Summary:
  Installed clients.
Description:
  Clients is an array to the installed clients found during initialization.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.CurrentClientName
Summary:
  Name of the currently selected client
Description:
  CurrentClientName holds the name of currently selected client. This property will
  hold 'MAPI' if simple MAPI is used, otherwise it's the name of the currently
  selected library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.DefaultClientIndex
Summary:
  Index of default library.
Description:
  DefaultClientIndex holds the index of library that is configured as the default
  MAPI client.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiInstalled
Summary:
  Flag if MAPI installed.
Description:
  MapiInstalled shows if MAPI is installed.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiVersion
Summary:
  Version of MAPI
Description:
  MapiVersion holds the MAPI version.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.SelectedClientIndex
Summary:
  Index of currently selected client.
Description:
  With SelectedClientIndex you can determine or set the client library to use. This
  property is usefull only if ClientConnectKind = ctDirect.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.SimpleMapiInstalled
Summary:
  Flag if Simple MAPI installed
Description:
  SimpleMapiInstalled shows if Simple MAPI is installed.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.BeforeUnloadClient
Summary:
  Event called before a client library unloads.
Description:
  The BeforeUnloadClient event gets called before a client library is unloaded.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiAddress
Summary:
  MAPIAddress function in loaded library.
Description:
  MAPIAddress points to the MAPIAddress function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiDeleteMail
Summary:
  MAPIDeleteMail function in loaded library.
Description:
  MAPIDeleteMail points to the MAPIDeleteMail function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiDetails
Summary:
  MapiDetails function in loaded library.
Description:
  MapiDetails points to the MapiDetails function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiFindNext
Summary:
  MapiFindNext function in loaded library.
Description:
  MapiFindNext points to the MapiFindNext function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiFreeBuffer
Summary:
  MapiFreeBuffer function in loaded library.
Description:
  MapiFreeBuffer points to the MapiFreeBuffer function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiLogOff
Summary:
  MapiLogOff function in loaded library.
Description:
  MapiLogOff points to the MapiLogOff function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiLogOn
Summary:
  MapiLogOn function in loaded library.
Description:
  MapiLogOn points to the MapiLogOn function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiReadMail
Summary:
  MapiReadMail function in loaded library.
Description:
  MapiReadMail points to the MapiReadMail function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiResolveName
Summary:
  MapiResolveName function in loaded library.
Description:
  MapiResolveName points to the MapiResolveName function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiSaveMail
Summary:
  MapiSaveMail function in loaded library.
Description:
  MapiSaveMail points to the MapiSaveMail function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiSendDocuments
Summary:
  MapiSendDocuments function in loaded library.
Description:
  MapiSendDocuments points to the MapiSendDocuments function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclSimpleMapi.MapiSendMail
Summary:
  MapiSendMail function in loaded library.
Description:
  MapiSendMail points to the MapiSendMail function in the loaded library.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecipKind
<GROUP InternetandE-mail.MAPI>
Summary:
  E-mail recipient type
Description:
  The TJclEmailRecipKind type defines the recipient type of an address.
Donator:
  Petr Vones
@@TJclEmailRecipKind.rkOriginator
  Address is the address of the sender or originator.
@@TJclEmailRecipKind.rkTO
  Address is of a primary recipient.
@@TJclEmailRecipKind.rkCC
  Address is of a copy recipient.
@@TJclEmailRecipKind.rkBCC
  Address is of a blind copy recipient.
--------------------------------------------------------------------------------
@@TJclEmailRecip
<GROUP InternetandE-mail.MAPI.TJclEmailRecip>
Summary:
  E-mail recipient object
Description:
  TJclEmailRecip is an e-mail recipient address.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecip.AddressAndName
Summary:
  Returns an address with a name
Description:
  AddressAndName returns a formats a string so that the result is "name" <address>.
  If the recipient name is unknown, the name part is replaced by the address.
Result:
  Returns a formatted string containing the name and address of the recipient.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecip.AddressType
Summary:
  Determines the address type of a recipient.
Description:
  AddressType holds the address type of a recipient. When left empty, the default
  address type will be used (usually this is SMTP) but it can be overridden by
  setting the AddressesType property of TJclEmailRecips.
  Do not confuse AddressType with the Kind property. Kind tells you
  whether the recipient is a primary recipient, a copy recipient or such, while
  AddressType tells you the type of e-mail address used.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecip.Address
Summary:
  The mail address for the recipient
Description:
  Address holds the mail address of the recipient.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecip.Kind
Summary:
  The recipient type
Description:
  Kind holds the type of recipient (i.e.. message originator, primary recipient,
  copy recipient or blind copy recipient). Do not confuse Kind with AddressType.
  Address type holds the type of mail address (eg. SMTP).
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecip.Name
Summary:
  The name of the recipient
Description:
  Name holds the full name of recipient.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecips
<GROUP InternetandE-mail.MAPI.TJclEmailRecips>
Summary:
  E-mail recipients list object
Description:
  TJclEmailRecips is a list of e-mail recipient addresses.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecips.Add
Summary:
  Adds a new recipient to the list.
Description:
  Add adds a new recipient to the list. If the recipient was added successfully,
  the index of the new item is returned.
Parameters:
  Address - Address of recipient.
  Name - Name of recipient (optional).
  Kind - Type of recipient (defaults to rkTO).
  AddressType - Type of address (optional).
Result:
  If the recipient was successfully added the function returns its index.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecips.SortRecips
Summary:
  Sorts the recipient list.
Description:
  SortRecips sorts the recipients. The order is determined by recipient type and
  the name (unless the name is empty, in which case the address is used).
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecips.AddressesType
Summary:
  Default address type override.
Description:
  Set AddressesType to override the default address type of any recipient with an
  empty AddressType property.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecips.Items
Summary:
  List of recipients.
Description:
  Items is an array of recipients added to the list.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailRecips.Originator
Summary:
  The message originator
Description:
  Originator holds the first e-mail recipient that is marked as Originator.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmailFindOption
<GROUP InternetandE-mail.MAPI>
Summary:
  MAPI search options
Description:
  TJclEmailFindOptions is the type that correspond to the MAPI search flags.
Donator:
  Petr Vones
@@TJclEmailFindOption.foFifo
  The message identifiers returned should be in the order of time received. FindFirstMessage and FindNextMessage calls can take longer if this flag is set. Some MAPI implementations cannot honor this request and return the MAPI_E_NO_SUPPORT value.
@@TJclEmailFindOption.foUnreadOnly
  Only unread messages of the specified type are returned. If this flag is not set, any message of the specified type can be returned.
@@TJclEmailFindOptions
<GROUP InternetandE-mail.MAPI>
<COMBINE TJclEmailFindOption>
--------------------------------------------------------------------------------
@@TJclEmailLogonOption
<GROUP InternetandE-mail.MAPI>
Summary:
  Logon options
Description:
  Logon options
Donator:
  Petr Vones
@@TJclEmailLogonOption.loLogonUI
  Login with a user interface (i.e.. show login dialog of client).
@@TJclEmailLogonOption.loNewSession
  Start a new session.
@@TJclEmailLogonOption.loForceDownload
  Force mails and attachments to be downloaded.
@@TJclEmailLogonOptions
<GROUP InternetandE-mail.MAPI>
<COMBINE TJclEmailLogonOption>
--------------------------------------------------------------------------------
@@TJclEmailReadOption
<GROUP InternetandE-mail.MAPI>
Summary:
  Read options
Description:
  Read options
Donator:
  Petr Vones
@@TJclEmailReadOption.roAttachments
  Read attachments.
@@TJclEmailReadOption.roHeaderOnly
  Read header only (no body).
@@TJclEmailReadOption.roMarkAsRead
  Mark the message as read.
@@TJclEmailReadOptions
<GROUP InternetandE-mail.MAPI>
<COMBINE TJclEmailReadOption>
--------------------------------------------------------------------------------
@@TJclEmailReadMsg
<GROUP InternetandE-mail.MAPI>
Summary:
  Message information record
Description:
  TjcEmailReadMsg holds messages information of a read message.
Donator:
  Petr Vones
@@TJclEmailReadMsg.ConversationID
  ID of thread the message belongs to. Some MAPI implementations do not support this member.
@@TJclEmailReadMsg.DateReceived
  Date and time of reception.
@@TJclEmailReadMsg.MessageType
  Type of a non-IPM message. Most clients can just set it an empty string when sending messages, or ignore it when reading messages.
@@TJclEmailReadMsg.Flags
  Message flags as specified by MAPI.
--------------------------------------------------------------------------------
@@TJclEmail
<GROUP InternetandE-mail.MAPI.TJclEmail>
Summary:
  E-mail class.
Description:
  TJclEmail is an e-mail class, capable of both reading and sending messages.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.Address
Summary:
  Shows address-book dialog.
Description:
  Address shows the address book so that a user can select addresses to be added to
  the recipient list.
  {Parameters]
  Count=2
  1=Caption:string=Caption of dialog. When left empty, the default caption is shown.
  2=EditFields:Integer=Number of edits to show. Defaults to 3.
Result:
  When the address book was successfully shown and closed the function returns True,
  otherwise it generates an exception.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.Clear
Summary:
  Removes all recipients, messages and attachments from the internal buffer.
Description:
  Clear removes all recipients, messages and attachments from the internal buffer.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.Delete
Summary:
  Deletes a messages given it's ID.
Description:
  Delete deletes the messages specified by it's ID.
Result:
  If the message was successfully deleted the function returns True.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.FindFirstMessage
Summary:
  Finds the first message.
Description:
  FindFirstMessage finds the first message according to the FindOptions property.
Result:
  If a message was found the function returns True.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.FindNextMessage
Summary:
  Finds the next message.
Description:
  FindNextMessage finds the next message according to the FindOptions property.
Result:
  If a message was found the function returns True.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.LogOff
Summary:
  Logs off from the MAPI client.
Description:
  LogOff logs off from the MAPI client.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.LogOn
Summary:
  Logs on to the MAPI client.
Description:
  LogOn logs on to the MAPI client, optionally using a profile and specifying a password.
Parameters:
  ProfileName - Name of profile to use when logging on.
  Password - Password to use when logging on.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.MessageReport
Summary:
  Generates a text report for the current message.
Description:
  MessageReport generates a text report of the current messages, optionally
  including the addresses for recipient names. The report is added to the
  current Strings contents.
Parameters:
  Strings - TStrings descendant that is to receive the report. Note that the list is not cleared in the method.
  MaxWidth - Number of columns before text is wrapped. Defaults to 80
  IncludeAddesses - When set to True addresses for recipients are included, otherwise only the names are given. Defaults to False.
Result:
  Number of lines added that belong to the header.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.Read
Summary:
  Read the last found message.
Description:
  Read reads the last found message (i.e.. the message found after a call to
  FindFirstMessage or FindNextMessage). You can specify how a message is read by
  setting the options parameter. See TJclEmailReadOptions for more information on
  the possible options.
Parameters:
  Options - Options for reading. See TJclEmailReadOptions for more information on the possible options.
Result:
  If the message was read successfully the function returns True.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.ResolveName
Summary:
  Resolves a name into an address.
Description:
  ResolveName tries to convert the given name and / or address to a known name and
  address in the address book. Optionally a dialog will be shown to confirm the
  resolve.
Parameters:
  Name - Name of a recipient
  Address - Address of a recipient
  ShowDialog - Boolean. When set to True a dialog will be shown to confirm the resolve. Defaults to False.
Result:
  If the name was successfully resolved the function returns True and the Name and
  Address parameters hold the correct information. If resolving failed the function
  returns False while Name and Address are left unchanged.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.Save
Summary:
  Save the message as concept.
Description:
  Save saves the current message as a concept message.
Result:
  If saved successfully the function returns True.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.Send
Summary:
  Sends the message.
Description:
  Send sends the current message, optionally showing dialogs (eg. for logging on
  or resolving/choosing a recipient).
Parameters:
  ShowDialog - When set to True a dialogs are shown as needed (eg. for logging on or resolving/choosing recipients). When set to False you must assure that recipients are defined, otherwise an error occurs.
Result:
  If sent successfully the function returns True.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.SortAttachments
Summary:
  Sorts attachments alphabetically on file name.
Description:
  SortAttachments will sort the list of attachments based on the filename.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.Attachments
Summary:
  List of attachments for the current message.
Description:
  Attachments is a TStrings descendant holding the list of attachments for the
  current message.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.Body
Summary:
  Body of the current message.
Description:
  Body holds the text of the current message.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.FindOptions
Summary:
  Options to use when finding/iterating through messages.
Description:
  FindOptions are the options to use when finding/iterating through messages.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.LogonOptions
Summary:
  Options to use when logging on.
Description:
  LogonOptions are the options to use when logging on to the MAPI client.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.ParentWnd
Summary:
  Handle of parent window.
Description:
  ParentWnd is the handle of the parent window when MAPI dialogs are to be shown.
  ParentWnd gets initialized to the first top-level window of the main thread, but
  can be set to another window if needed.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.ReadMsg
Summary:
  Info on last message read.
Description:
  ReadMsg holds information of the last message read by a call to the Read method.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.Recipients
Summary:
  List of recipient for the current message.
Description:
  Recipients is a list of recipients defined for the current message.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.SeedMessageID
Summary:
  Seed to use when finding next message.
Description:
  SeedMessageID is the ID of the last message read or saved and is also the
  seed used for the FindNextMessage method.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.SessionHandle
Summary:
  Handle of current MAPI session.
Description:
  SessionHandle is the handle of the current MAPI session that is logged on to.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.Subject
Summary:
  Subject of current message.
Description:
  Subject holds the subject of the current message.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@TJclEmail.UserLogged
Summary:
  Flag if user is logged on.
Description:
  UserLogged is True when the user is currently logged on to the MAPI client.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@JclSimpleSendMail
<GROUP InternetandE-mail.MAPI>
Summary:
  Sends an email to a recipient.
Description:
  JclSimpleSendMail sends an e-mail with optionally an attachment to 1 recipient.
Parameters:
  ARecipient - Address of the recipient.
  AName - Name of the recipient (can be left empty).
  ASubject - Subject of the message.
  ABody - Body of the message.
  AAttachment - Filename of attachment (optional).
  ShowDialog - Set to True if a dialog should be shown (default to True).
  AParentWND - If non-zero it should be the handle of the main window of your application. In that case, any MAPI dialogs are shown modal. If left 0, MAPI dialogs are not shown modal.
Result:
  If the message was successfully handed over to the MAPI client, the function
  returns True, otherwise it returns False.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@JclSimpleBringUpSendMailDialog
<GROUP InternetandE-mail.MAPI>
Summary:
  Brings up the send mail dialog
Description:
  JclSimpleBringUpSendMailDialog brings up the send mail dialog.
Parameters:
  ASubject - Subject of the message.
  ABody - Body of the message.
  AAttachment - Filename of attachment (optional).
  AParentWND - If non-zero it should be the handle of the main window of your application. In that case, any MAPI dialogs are shown modal. If left 0, MAPI dialogs are not shown modal.
Result:
  If the dialog was successfully displayed, the function returns True, otherwise
  it returns False.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@MapiCheck
<GROUP InternetandE-mail.MAPI>
Summary:
  Checks the MAPI result code.
Description:
  MapiCheck checks the MAPI result code, optionally ignoring user abort codes. If
  an error occurred, an exception is raised, otherwise the result code will be
  returned (which is either SUCCESS_SUCCESS or MAPI_E_USER_ABORT).
Parameters:
  Res - MAPI result code.
  IgnoreUserAbort - Set to True (default) to ignore MAPI_E_USER_ABORT, otherwise MAPI_E_USER_ABORT will be seen as an error.
Result:
  If MAPI result code is not an error the function returns the result code, otherwise
  an EJclMAPIError exception is raised.
Donator:
  Petr Vones
--------------------------------------------------------------------------------
@@MapiErrorMessage
<GROUP InternetandE-mail.MAPI>
Summary:
  Retrieves the MAPI error message for a given MAPI result code.
Description:
  MapiErrorMessage translates a MAPI result code into a message.
Parameters:
  ErrorCode - MAPI result code.
Result:
  The MAPI error message belonging to the given MAPI result code.
Donator:
  Petr Vones