⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch13.htm

📁 MAPI__SAPI__TAPI
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<p>This chapter covered two main topics: 

<ul>
  <li><font COLOR="#000000">The Visual Basic MAPI controls</font> </li>
  <li><font COLOR="#000000">Building a Simple MAPI client application</font> </li>
</ul>

<p>You learned the properties and methods of the two Visual Basic MAPI controls. The <tt><font
FACE="Courier">MAPISession</font></tt> control is used to gain access to MAPI service 
providers through the <tt><font FACE="Courier">SignOn</font></tt> and <tt><font
FACE="Courier">SignOff</font></tt> methods. The <tt><font FACE="Courier">MAPIMessages</font></tt> 
control is used to read, create, delete, address, and send MAPI messages. </p>

<p>The Simple MAPI client described in this chapter showed you how to build a complete 
MAPI-enabled application with a minimum of coding. This example application showed how you 
can use the Visual Basic MAPI controls to create a fully-functional e-mail client that can 
read and delete incoming messages, compose new messages, address them, and send them to 
their recipients. </p>

<p>You also learned that Simple MAPI services allow only limited access to the MAPI 
address book. You can search and edit the address book only through the pre-defined <tt><font
FACE="Courier">MAPI.Show</font></tt> method. You cannot directly search for existing 
addresses or add, edit, or delete addresses without using the address dialog box supplied 
by the MAPI service provider. </p>

<p>Simple MAPI does not allow you access to any of the existing mail folders. You can only 
see the inbox folder and its contents. </p>

<h2><a NAME="Chapter8TheOLEMessagingLibrary"></a><b><a HREF="ch8.htm">Chapter 8</a><font
SIZE="5" COLOR="#FF0000">, &quot;The OLE Messaging Library&quot;</font></b></h2>

<p>In <a HREF="ch8.htm">Chapter 8</a> you learned how to use the OLE Messaging Library 
(OML) to access features of MAPI. You learned all the major objects, their methods, and 
their properties. 

<ul>
  <li><font COLOR="#000000">The Session object</font> </li>
  <li><font COLOR="#000000">The Folder objects and collections</font> </li>
  <li><font COLOR="#000000">The Message objects and collections</font> </li>
  <li><font COLOR="#000000">The Attachment objects and collections</font> </li>
  <li><font COLOR="#000000">The Recipient objects and collections</font> </li>
  <li><font COLOR="#000000">The Address objects</font> </li>
  <li><font COLOR="#000000">The InfoStore objects and collections</font> </li>
</ul>

<p>You also wrote several code examples that inspected and modified objects and their 
properties. You learned to use the OLE Messaging Library to: 

<ul>
  <li><font COLOR="#000000">Read existing messages</font> </li>
  <li><font COLOR="#000000">Create new messages</font> </li>
  <li><font COLOR="#000000">Add recipients to messages</font> </li>
  <li><font COLOR="#000000">Add attachments to messages</font> </li>
  <li><font COLOR="#000000">Modify records in the MAPI address book</font> </li>
</ul>

<h2><a NAME="Chapter9CreatingaMAPIMailingList"></a><b><a HREF="ch9.htm">Chapter 9</a><font
SIZE="5" COLOR="#FF0000">, &quot;Creating a MAPI Mailing List Manager with the OLE 
Messaging Library&quot;</font></b></h2>

<p>In <a HREF="ch9.htm">Chapter 9</a> you built a Mailing List Manager (MLM) using 
Microsoft's OLE Messaging Library. This application let users define a mailing list, 
allowed others to become list subscribers, published messages automatically (based on 
date), and allowed other users to query and retrieve old messages from the list archives. 
The program accepted members from within a single network, or from around the world via 
Internet (or other) transports. </p>

<p>Here are the key features of the Mailing List Manager: 

<ul>
  <li><font COLOR="#000000">Automatically scans incoming mail for MLM messages</font> </li>
  <li><font COLOR="#000000">Automatically adds and drops subscribers from the group</font> </li>
  <li><font COLOR="#000000">Automatically distributes messages based on the current date</font> 
  </li>
  <li><font COLOR="#000000">Allows subscribers to request copies of archived messages</font> </li>
  <li><font COLOR="#000000">Allows subscribers to request a default FAQ file</font> </li>
  <li><font COLOR="#000000">Allows most features to be modified through the use of control 
    files</font> </li>
</ul>

<p>The MLM application allowed individuals to create a set of text files to be distributed 
to a controlled list of users at specified times. This project had only one simple form 
and several support routines. All application rules were stored in a set of ASCII control 
files similar to INI/registry settings. These control values can be changed by the list 
manager to determine how the mailing list operates, and what features are available to 
subscribers. </p>

<h2><a NAME="Chapter10BuildingaMAPIEnabled"></a><b><a HREF="ch10.htm">Chapter 10</a><font
SIZE="5" COLOR="#FF0000">, &quot;Building a MAPI-Enabled Forum Tool&quot;</font></b></h2>

<p>In <a HREF="ch10.htm">Chapter 10</a> you learned how to use the OLE Messaging Library 
to build a Visual Basic 4.0 application that can track discussion threads in the shared 
Microsoft Exchange folder. You learned how to use the ConversationIndex and 
ConversationTopic properties of message objects in order to track and link messages in a 
series of related threads. </p>

<p>You also used the Visual Basic 4.0 Win95 controls to create a Forum Client reader that 
graphically represents the progress of a discussion and allows users to read threads and 
add new items to a thread. You added discussion manager features that control the 
expiration, deletion, and archiving of threads and allow users to set memberships and 
security levels for discussion groups. </p>

<p>In addition to building your own Forum Tool with Visual Basic 4.0, you learned how to 
use the Folder Views options of Microsoft Exchange Client to create both personal and 
public views of message folders. This gives you the ability to create discussion forums 
within Microsoft Exchange without having to install additional MAPI software. </p>

<h2><a NAME="Chapter11CreatingaMAPIEMailAgen"></a><b><a HREF="ch11.htm">Chapter 11</a><font
SIZE="5" COLOR="#FF0000">, &quot;Creating a MAPI E-Mail Agent&quot;</font></b></h2>

<p>In this chapter you learned how to use the OLE Messaging Library and some API calls to 
create a stand-alone e-mail agent. This agent scanned your incoming mail and, based on 
rules you established, automatically handled messages for you. It also archived and purged 
old messages. All actions were based on rules you established in a control file. </p>

<p>Features of the e-mail agent included: 

<ul>
  <li><font COLOR="#000000">Timed scanning of your inbox</font> </li>
  <li><font COLOR="#000000">Notification of message arrivals based on level of importance</font> 
  </li>
  <li><font COLOR="#000000">Automatic routing of incoming messages to other e-mail users</font> 
  </li>
  <li><font COLOR="#000000">Automatic replies to messages based on subject or sender</font> </li>
  <li><font COLOR="#000000">Automatic sorting of unread messages into separate folders based 
    on subject, sender, or level of importance.</font> </li>
  <li><font COLOR="#000000">Automatic archiving and purging of messages based on subject, date 
    received, or date last read.</font> </li>
</ul>

<h2><a NAME="Chapter12CreatingMicrosoftExchange"></a><b><a HREF="ch12.htm">Chapter 12</a><font
SIZE="5" COLOR="#FF0000">, &quot;Creating Microsoft Exchange Client Extensions&quot;</font></b> 
</h2>

<p>In <a HREF="ch12.htm">Chapter 12</a> you learned how to add custom routines to your 
existing MAPI clients. You learned how to do this using the MAPI 0 extension interface and 
by using the Microsoft Exchange client extension. </p>

<p>You learned that there are four types of Microsoft Exchange client extensions: 

<ul>
  <li><font COLOR="#000000">Command extensions</font> </li>
  <li><font COLOR="#000000">Event extensions</font> </li>
  <li><font COLOR="#000000">Property sheet extensions</font> </li>
  <li><font COLOR="#000000">Advanced criteria extensions</font> </li>
</ul>

<p>You also learned that there are several possible Microsoft Exchange extension message 
events that you can use to build special processing routines into the Microsoft Exchange 
client (see Table 13.1). <br>
</p>

<p align="center"><b>Table 13.1. Microsoft Exchange client message events.</b> </p>
<div align="center"><center>

<table BORDERCOLOR="#000000" BORDER="1" WIDTH="80%">
  <tr>
    <td><i>Message Event</i></td>
    <td WIDTH="376"><i>Description</i> </td>
  </tr>
  <tr>
    <td WIDTH="214"><tt><font FACE="Courier">OnRead</font></tt> </td>
    <td WIDTH="376">Replaces or enhances the behavior of Microsoft Exchange when reading 
    information from a message. </td>
  </tr>
  <tr>
    <td WIDTH="214"><tt><font FACE="Courier">OnReadComplete</font></tt> </td>
    <td WIDTH="376">Enables extension objects to roll back their implementation of the <tt><font
    FACE="Courier">OnRead</font></tt> method in case of an error, or to release resources 
    allocated by <tt><font FACE="Courier">OnRead</font></tt>. </td>
  </tr>
  <tr>
    <td WIDTH="214"><tt><font FACE="Courier">OnWrite</font></tt> </td>
    <td WIDTH="376">Replaces or enhances the behavior of Microsoft Exchange when writing 
    information to a message. </td>
  </tr>
  <tr>
    <td WIDTH="214"><tt><font FACE="Courier">OnWriteComplete</font></tt> </td>
    <td WIDTH="376">Enables extension objects to roll back their implementation of the <tt><font
    FACE="Courier">OnWrite</font></tt> method in case of an error, or to release resources 
    allocated by <tt><font FACE="Courier">OnWrite</font></tt>. </td>
  </tr>
  <tr>
    <td WIDTH="214"><tt><font FACE="Courier">OnCheckNames</font></tt> </td>
    <td WIDTH="376">Replaces or enhances the behavior of Microsoft Exchange when recipient 
    names typed by the user are being resolved to their address book entries. </td>
  </tr>
  <tr>
    <td WIDTH="214"><tt><font FACE="Courier">OnCheckNamesComplete</font></tt> </td>
    <td WIDTH="376">Enables extension objects to roll back their implementation of the <tt><font
    FACE="Courier">OnCheckNames</font></tt> method in case of an error, or to release 
    resources allocated by <tt><font FACE="Courier">OnCheckNames</font></tt>. </td>
  </tr>
  <tr>
    <td WIDTH="214"><tt><font FACE="Courier">OnSubmit</font></tt> </td>
    <td WIDTH="376">Replaces or enhances the behavior of Microsoft Exchange when a message has 
    been submitted. </td>
  </tr>
  <tr>
    <td WIDTH="214"><tt><font FACE="Courier">OnSubmitComplete</font></tt> </td>
    <td WIDTH="376">Enables extension objects to roll back their implementation of the <tt><font
    FACE="Courier">OnSubmit</font></tt> method in case of an error, or to release resources 
    allocated by <tt><font FACE="Courier">OnSubmit</font></tt>. </td>
  </tr>
</table>
</center></div>

<p>You designed a simple extension that computes and reports the size of the message at 
the <tt><font FACE="Courier">OnRead</font></tt> event. You also added a simple property 
page to the Microsoft Exchange client to turn the size checker on and off. </p>

<p>You learned how to register MAPI clients by modifying the [Register] section of the 
local INI file. Also, you learned that there are several places where extension 
registration can be found, depending on the Windows platform: 

<ul>
  <li><tt><font FACE="Courier">MSMAIL.INI</font></tt>-Local extensions on 16-bit MSMAIL 
    clients. </li>
  <li><tt><font FACE="Courier">EXchNG.INI</font></tt>-Local extensions on 16-bit Exchange 
    clients. </li>
  <li><tt><font FACE="Courier">SHARED.INI</font></tt>-Shared extensions on 16-bit clients. </li>
  <li><tt><font FACE="Courier">SHARED32.INI</font></tt>-Shared extensions on 32-bit clients. </li>
  <li><tt><font FACE="Courier">HKEY_LOCAL_MAchINE\Software\Microsoft\Exchange\Client\Options</font></tt>-Local 
    extensions on 32-bit Exchange clients. </li>
</ul>

<hr WIDTH="100%">

<p align="center"><a HREF="ch12.htm"><img SRC="pc.gif" BORDER="0" HEIGHT="88" WIDTH="140"></a><a
HREF="#CONTENTS"><img SRC="cc.gif" BORDER="0" HEIGHT="88" WIDTH="140"></a><a
HREF="index.htm"><img SRC="hb.gif" BORDER="0" HEIGHT="88" WIDTH="140"></a><a
HREF="ch14.htm"><img SRC="nc.gif" BORDER="0" HEIGHT="88" WIDTH="140"></a></p>

<hr WIDTH="100%">
<layer src="http://www.spidersoft.com/ads/bwz468_60.htm" visibility="hidden" id="a1" width="600" onload="moveToAbsolute(ad1.pageX,ad1.pageY); a1.clip.height=60;visibility='show';">
</layer>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -