- The ADO/OLE DB Conspiracy
- What Does ADO 2.5 Have to Do with Exchange 2000?
- The Role of the Web Storage System
- The Exchange OLE DB Provider
- File URLs
- HTTP URLs
- Programmatically Getting a User's HTTP Mailbox Folder URLs
- The Open Method of the ADO 2.5 Record Object
- Using Web Storage System SQL to Get a List of Folders
- Web Storage System SQL
- The SELECT Statement
- The ORDER BY Clause
- The RANK BY Clause
- Some Unsupported SQL
The Role of the Web Storage System
Another piece of the puzzle that makes this whole technology work is the Web Storage System. The Web Storage System is a database technology just introduced with the Windows 2000 operating system that you can use to store, share, and manage many types of data. For example, you can store e-mail messages, Web content, multimedia files, and Office documents all together in the Web Storage System.
The Web Storage System is organized as a hierarchy of folders much like a traditional file system, in which each folder can contain any number of items, including other folders.
With Exchange 5.5 and earlier releases, all Exchange data were squirreled away in a proprietary database that a user could manipulate really only from within Exchange itself or from an Exchange client (such as Microsoft Outlook), or programmatically through the Collaboration Data Objects (CDO) 1.21 API. With Exchange 2000, all Exchange data is now stored in either the Web Storage System or the Active Directory. For purposes of this chapter, all we have to know about the Windows 2000 Active Directory is that it contains information about users, groups, organizations, and services in an enterprise, including which users have Exchange mailboxes on the system and what their e-mail addresses are. What is really interesting to us is how Exchange 2000 uses the Web Storage System. As Figure 7.3 shows, Exchange 2000 data saved in the Web Storage System appears in your standard Windows Explorer just like anything else saved on your file system.
When you install Exchange 2000 on a server, a virtual drive (usually the M: drive) is created. Each Exchange store exists as a file system folder mounted under the M: drive on the host server. The Windows Explorer and standard Win32 file system APIs can now access the Exchange data through the Exchange Installable File System (ExIFS) technology. If you look at the folder list on the left-hand side of the Explorer window in Figure 7.3, you will see the aforementioned M: drive, and underneath that a folder with the sample name of a domain set up on a Windows 2000/Exchange 2000 laptop (GOMEZAMOBILE.LOCAL). Below that is a special folder called MBX, which is where Exchange 2000 stores all of the user mailboxes. In this case a mailbox has been created for the user's Administrator account and beneath the Administrator folder are all of the standard folders in Outlook 2000namely, Calendar, Contacts, Deleted Items, Drafts, Inbox, Journal, Notes, Outbox, Sent Items, and Tasks. The right-hand pane shows three e-mail messages in the Administrator's inbox. Notice that they all have a .eml file extension, which indicates the Internet E-Mail Message file type. All of the standard Outlook message types have this .eml extension, including Contacts, Appointment Items, and Tasks.
Note: For a much more in-depth discussion of the M: drive and the Exchange Installable File System, see Chapter 18.
All of this is important because every item in the Web Storage System can be identified by a standard URL. We'll look at the syntax for these URLs later in this chapter when we get into some code.