Ureader.com  
Microsoft software help and Community
   home   |   control panel login   |   archive   |  
 
Exchange
2000.active.directory
2000.admin
2000.announcements
2000.app.conversion
2000.applications
2000.clients
2000.clustering
2000.connectivity
2000.development
2000.documentation
2000.general
2000.information.store
2000.interop
2000.kms
2000.misc
2000.protocols
2000.realtime.collabo.
2000.setup
2000.transport
2000.win2000
admin
application.conversion
applications
clients
clustering
connectivity
design
development
misc
mobility
setup
tools
  
 
date: 20 Feb 2006 03:02:43 -0800,    group: microsoft.public.exchange2000.development        back       


Different Hex Ids for same property in ?? Explain   
Hi ,
I am trying to read all the properties from the Items on Exchnage
server 2000. I want to support all the items like notes, tasks, jornal
,messages,contacts and all that . I am  using CDO and for the items
like journal, notes ,tasks where we dont have standard interfaces  am
trying to retrive the properties using

iItem.Fields.Item("http://schemas.microsoft.com/mapi/proptag/<mapi prop
tag>").Value

I am refering Outlook spy , MDBVU32.exe,
http://www.cdolive.com/cdo10.htm . but for some properties i see
differnt ids in all these 3 references ..
eq. for task item's percent complete property the values i got are :

Outlook spy                                                 0x F61F
Type integer
MDBVU32.exe                                             0x 824f
PT_DOUBLE
http://www.cdolive.com/cdo10.htm                CdoPropSetID2 &
"0x8102"

 how can this happen ?? what i need to to do to be sure that my
application will always return correct value ??


Thanks,
Jay
date: 20 Feb 2006 03:02:43 -0800   author:   jay

Re: Different Hex Ids for same property in ?? Explain   
It sounds like you are trying to mix CDO 1.2 with CDOEX these two API's use 
different methods to access the Exchange Store (CDO 1.2 uses MAPI and CDOEX 
use Exoledb) hence you can't use them together you should use one or the 
other. Which one you might choose can depend on where you need to run you 
code from CDOEX can only be used locally on a Exchange server to access 
mailboxes located locally while CDO 1.2 can be used both locally and 
remotely. You might want to have a look at 
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/e2k3/e2k3/_techsel_bytechnology.asp 
which lists most of the versions of CDO and the differences between them 
(unfortunately it doesn't list CDO 1.2).

No matter which version of CDO you use (CDO 1.2 or CDOEX) you should be able 
to access all the properties on an item the method for accessing properties 
does differ between each API.

http://www.cdolive.com/cdo10.htm lists the methods you can use to access 
properties in CDO 1.2. Generally you can use the Mapi prop tag if the tag 
value is below x8000 anything about this range are custom properties see 
http://windowssdk.msdn.microsoft.com/library/default.asp?url=/library/en-us/mapi/html/_mapi1book_list_of_property_identifier_ranges.asp?frame=true. 
This means that the proptag will vary between server to server to access 
these properties in this range you should use the named property instead 
which will always be the same. There is a list of GUID's on CDOlive  for 
Example to access Task percent complete you should be using the named 
property 0x8102 using the 0320060000000000C000000000000046 propset GUID. eg

objtask.fields.item("0x8102", "0320060000000000C000000000000046")

With CDOEX you use the mapi namespace http://schemas.microsoft.com/mapi/ to 
access mapi properties. Within this namespace there are three sub namespaces 
see 
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/e2k3/e2k3/_cdo_schema_mapi.asp

As with CDO 1.2 if an item has a proptag below x8000 its okay to use the 
Prop tag eg to display PR_Subject

taskobj.fields("http://schemas.microsoft.com/mapi/proptag/0x0037001E").value

If the item has a named property you need to use the GUID in the following 
format

taskobj.Fields("http://schemas.microsoft.com/mapi/id/{00062003-0000-0000-C000-000000000046}/0x00008102")

The differences in the way the GUID's are used are explained in 
http://support.microsoft.com/?kbid=195656

It sounds complicated and is difficult to explain but once you get your head 
around it its not too bad.

Cheers
Glen


"jay"  wrote in message 
news:1140433198.823021.154970@g44g2000cwa.googlegroups.com...
> Hi ,
> I am trying to read all the properties from the Items on Exchnage
> server 2000. I want to support all the items like notes, tasks, jornal
> ,messages,contacts and all that . I am  using CDO and for the items
> like journal, notes ,tasks where we dont have standard interfaces  am
> trying to retrive the properties using
>
> iItem.Fields.Item("http://schemas.microsoft.com/mapi/proptag/<mapi prop
> tag>").Value
>
> I am refering Outlook spy , MDBVU32.exe,
> http://www.cdolive.com/cdo10.htm . but for some properties i see
> differnt ids in all these 3 references ..
> eq. for task item's percent complete property the values i got are :
>
> Outlook spy                                                 0x F61F
> Type integer
> MDBVU32.exe                                             0x 824f
> PT_DOUBLE
> http://www.cdolive.com/cdo10.htm                CdoPropSetID2 &
> "0x8102"
>
> how can this happen ?? what i need to to do to be sure that my
> application will always return correct value ??
>
>
> Thanks,
> Jay
>
date: Tue, 21 Feb 2006 10:42:39 +1100   author:   Glen Scales [MVP]

Google
 
Web ureader.com


    COPYRIGHT 2007, YARDI TECHNOLOGY LIMITED, ALL RIGHT RESERVE  |   contact us