Content stream is corrupted when you use a CDO function with the GetStream method to load an e-mail message in Exchange 2000 Server (834784)



The information in this article applies to:

  • Microsoft Exchange 2000 Server
  • Microsoft Exchange 2000 Server SP1
  • Microsoft Exchange 2000 Server SP2
  • Microsoft Exchange 2000 Server SP3

SYMPTOMS

In Microsoft Exchange 2000 Server, when you load an e-mail message from an electronic mail (.eml) file by using the IMessage::GetStream Collaboration Data Objects (CDO) function or the IBodypart::GetStream CDO function, the function may return a corrupted stream. For example, if you use either of these CDO functions to extract the contents of a Multipurpose Internet Mail Extension (MIME)-encoded e-mail message, the contents of a body part stream may be different from the contents of the original .eml message file. When you view the contents of the returned message, you may experience one or more of the following symptoms:
  • Some Unicode characters do not appear.
  • Some spaces are missing.
  • Extra carriage returns are added.
  • Text that identifies the message as MIME format is added.

CAUSE

This problem occurs because the character set of the ActiveX Data Objects (ADO) Stream object that is returned by the IBodypart::GetStream function or by the IMessage::GetStream function is set to UCS transformation format 8 (UTF-8) encoding. Therefore, the following specific problems occur:
  • The ADOStream::WriteToFile function adds a 3-byte UTF-8 format order mark at the beginning of the file. This order mark corrupts the first header property name in the MIME-encoded message.
  • The ADOStream::ReadFromFile function adds a 3-byte UTF-8 format order mark at the beginning of the MIME-encoded message. This order mark corrupts the first header property name that is obtained from CDO.

RESOLUTION

To resolve this problem, obtain the August 2004 Exchange 2000 Server Post-Service Pack 3 update rollup.

For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

870540 Availability of the August 2004 Exchange 2000 Server Post-Service Pack 3 update rollup

The English version of this hotfix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.
   Date         Time   Version            Size    File name
   --------------------------------------------------------------
   17-Feb-2004  05:24  6.0.6566.0      3,919,872  Cdoex.dll        
   17-Feb-2004  01:08                     12,720  Ctrl_calendarview20.htc
   17-Feb-2004  01:08                     91,631  Ctrl_calendarview20.js
   17-Feb-2004  05:15  6.0.6566.0        856,064  Davex.dll        
   17-Feb-2004  05:15  6.0.6566.0         53,248  Davexpc.dll      
   17-Feb-2004  05:10  6.0.6566.0        131,072  Drviis.dll       
   17-Feb-2004  05:11  6.0.6566.0        577,536  Dsaccess.dll     
   17-Feb-2004  04:21  6.0.6566.0        184,320  Dscmsg.dll       
   17-Feb-2004  04:22  6.0.6566.0        962,560  Emsmdb32.dll     
   17-Feb-2004  05:14  6.0.6566.0      2,179,072  Ese.dll          
   17-Feb-2004  05:14  6.0.6566.0         40,960  Eseperf.dll      
   17-Feb-2004  01:13                      6,991  Eseperf.hxx
   17-Feb-2004  05:14                    391,634  Eseperf.ini
   17-Feb-2004  05:24  6.0.6566.0      3,579,904  Excdo.dll        
   17-Feb-2004  05:10  6.0.6566.0         94,208  Eximap4.dll      
   17-Feb-2004  05:11  6.0.6566.0        262,144  Exmime.dll       
   17-Feb-2004  03:56  6.0.6566.0        176,128  Exnntp.dll       
   17-Feb-2004  05:15  6.0.6566.0        143,360  Exodbesh.dll     
   17-Feb-2004  05:15  6.0.6566.0         57,344  Exodbpc.dll      
   17-Feb-2004  05:15  6.0.6566.0        200,704  Exodbprx.dll     
   17-Feb-2004  05:15  6.0.6566.0      2,179,072  Exoledb.dll      
   17-Feb-2004  05:08  6.0.6566.0         81,920  Exosal.dll       
   17-Feb-2004  05:10  6.0.6566.0         32,768  Expop3.dll       
   17-Feb-2004  05:11  6.0.6566.0         32,768  Exproto.dll      
   17-Feb-2004  05:15  6.0.6566.0        307,200  Exprox.dll       
   17-Feb-2004  04:23  6.0.6566.0        143,360  Exschema.exe     
   17-Feb-2004  05:15  6.0.6566.0        331,776  Exsmtp.dll       
   17-Feb-2004  04:25  6.0.6566.0        675,840  Exwform.dll      
   17-Feb-2004  03:58  6.0.6566.0        180,224  Exwin32.dll      
   17-Feb-2004  04:24  6.0.6566.0         40,960  Febecfg.dll      
   17-Feb-2004  05:10  6.0.6566.0         32,768  Iisif.dll        
   17-Feb-2004  05:11  6.0.6566.0        135,168  Iisproto.dll     
   17-Feb-2004  05:12  6.0.6566.0         61,440  Imap4be.dll      
   17-Feb-2004  04:28  6.0.6566.0        319,488  Imap4evt.dll     
   17-Feb-2004  04:26  6.0.6566.0        126,976  Imap4fe.dll      
   17-Feb-2004  05:10  6.0.6566.0        126,976  Imap4svc.dll     
   17-Feb-2004  05:11  6.0.6566.0         40,960  Jcb.dll          
   17-Feb-2004  03:57  6.0.6566.0         49,152  Mdbevent.dll     
   17-Feb-2004  04:17  6.0.6566.0      2,289,664  Mdbmsg.dll       
   17-Feb-2004  03:59  6.0.6566.0         32,768  Mdbrole.dll      
   17-Feb-2004  04:22  6.0.6566.0        909,312  Mdbsz.dll        
   17-Feb-2004  05:11  6.0.6566.0         24,576  Mdbtask.dll      
   17-Feb-2004  03:56  6.0.6566.0        151,552  Nntpex.dll       
   17-Feb-2004  05:07  6.0.6566.0         94,208  Peexch50.dll     
   17-Feb-2004  05:08  6.0.6566.0        413,696  Phatcat.dll      
   17-Feb-2004  05:10  6.0.6566.0         36,864  Pop3be.dll       
   17-Feb-2004  04:28  6.0.6566.0        303,104  Pop3evt.dll      
   17-Feb-2004  04:26  6.0.6566.0         24,576  Pop3fe.dll       
   17-Feb-2004  05:08  6.0.6566.0         73,728  Pop3svc.dll      
   17-Feb-2004  04:28  6.0.6566.0        163,840  Protomsg.dll     
   17-Feb-2004  05:11  6.0.6566.0        532,480  Reapi.dll        
   17-Feb-2004  05:10  6.0.6566.0      4,673,536  Store.exe        
   17-Feb-2004  04:24  6.0.6566.0      3,735,552  Wmtemplates.dll  
				
Note Because of file dependencies, this hotfix requires Exchange 2000 Server Service Pack 3 (SP3). For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

301378 XGEN: How to obtain the latest Exchange 2000 Server service pack

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section of this article.

MORE INFORMATION

For more information about the GetStream method, visit the following Microsoft Web site: For additional information about Microsoft software updates, click the following article numbers to view the articles in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates

817903 XADM: New naming schema for Exchange Server software update packages


Modification Type:MinorLast Reviewed:10/3/2005
Keywords:kbHotfixServer kbQFE kbQFE kbfix kbExchange2000preSP4fix kbbug KB834784 kbAudITPRO