none
[MS-OXOMSG] RopOptionsData RRS feed

  • Question

  • Hi,

    I'm looking at RopOptionsData (MS-OXOMSG, v1.04 Section 2.2.4.4), and have a few questions:
    1. What is the purpose and format of the OptionsInfo value? For example, what does a server need to send for this to be valid?
    2. What is the purpose and format of the HelpFile?
    3. What is the intended purpose of the HelpFileName?

    [If possible, I'd like answers to these questions to take priority over my other open queries]

    As a longer term improvement, it would be useful to add an example for this ROP? For example, given an address type of "EX" and WantWin32 set to true, what is the expected result?

    Thanks

    Brad
    Monday, April 6, 2009 5:26 AM

Answers

  • In my research the data is duplication of functionality of NSPI that predates Active Directory.  The correct mechanism to pull the display templates is through NSPI.

    The data structure for the OptionsInfo:

    // header on option data downloaded to client
    #define MAX_PATH 260 
    struct
    {
       unsigned long sizeOfMessageDialogDisplayTable;
       unsigned long sizeofRecipentDialogDisplayTable
       char componentName[MAX_PATH + 32];
    } OptionsDataHeader;
    char MessageDialogDisplayTable[sizeOfMessageDialogTable];
    char RecipentDialogDisplayTable[sizeofRecipentDialogTable];
    

     

    And if there was a help file defined in AD you would receive the the size and the help file in the response. As for the WantWin32 flag determines the type of helpfile to bring back.  Your choices are 32 or 16 bit Windows so this gives you some idea as to the legacy of this ROP.
    Developer Consultant
    Thursday, May 7, 2009 12:49 AM
    Moderator

All replies

  • Brad,

    Outlook does not use the data as it just parses over the reponse buffer for this ROP. 

    In reviewing both MS-OXOMSG and MS-OXCROPS for the response buffer for RopOptionData I find confusing is the use of terms "opaque data from the server" and "'MAY' be ignored by the client.". 

    Since Outlook does not use the data I'm not sure what is the intended purpose is.  It looks like this is a mechanism to distributing help files to the clients so I will ask for some clarification.
    Developer Consultant
    Monday, April 6, 2009 5:47 PM
    Moderator
  • Tom,

    I spent some quality time with the MAPI documentation last night, and it looks like the opaque data part may relate to IXPLogon::RegisterOptions (see http://msdn.microsoft.com/en-us/library/cc815299.aspx), and to the OPTIONDATA structure (http://msdn.microsoft.com/en-us/library/cc842290.aspx).

    I didn't find anything that would relate to the help file stuff.

    Brad
    Monday, April 6, 2009 9:52 PM
  • Tom,

    I've since partly implemented this ROP, and I'm seeing the following responses:
    Address Type: EX, Size of Options Data: 909, Size of Help Data: 0
    Address Type: X400, Size of Options Data: 300, Size of Help Data: 0
    Address Type: SMTP, Size of Options Data: 684, Size of Help Data: 0
    Address Type: SMTP=*, Size of Options Data: 684. Size of Help Data: 0

    It doesn't seem to vary according to whether the "WantWin32" boolean is set or not.

    Brad
    Tuesday, April 7, 2009 4:28 AM
  • Actually I stand corrected that Outlook does not request and process the ROP RopOptionData.  The data and helpfile appear to be related to distributing Active Directory (AD) templates + help file with associated with recipient types (SMTP, …).  I suspect that there are standard templates that can be customized. 

    Administrators would customize as talked about on this blog post
    http://blogs.msdn.com/dgoldman/archive/2007/02/14/how-to-add-edit-change-and-revert-address-and-details-templates.aspx

    The information above is really help and I will add to my on going discussion with development to get more details on the data structure.


    Developer Consultant
    Tuesday, April 7, 2009 5:05 AM
    Moderator
  • I've extended my implementation a bit more, and dumped the outputs.
    For EX:
    0x61 0x02 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xb0 0x4a 0x00 0xe6 0xaf 0x4a 0x00    a.........J...J.
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x08 0x00 0x00 0x00 0x45 0x63 0x53 0x65 0x65 0x6b 0x0d 0x0a 0x00 0x6f 0x72 0x61    ....EcSeek...ora
    0x67 0x65 0x20 0x47 0x72 0x6f 0x75 0x70 0x2c 0x43 0x4e 0x3d 0x49 0x6e 0x66 0x6f    ge Group,CN=Info
    0x72 0x6d 0x61 0x74 0x69 0x6f 0x6e 0x53 0x74 0x6f 0x72 0x65 0x2c 0x43 0x4e 0x3d    rmationStore,CN=
    0x53 0x42 0x53 0x32 0x30 0x30 0x33 0x2d 0x53 0x45 0x52 0x56 0x45 0x52 0x2c 0x43    SBS2003-SERVER,C
    0x4e 0x3d 0x53 0x65 0x72 0x76 0x65 0x72 0x73 0x2c 0x43 0x4e 0x3d 0x66 0x69 0x72    N=Servers,CN=fir
    0x73 0x74 0x20 0x61 0x64 0x6d 0x69 0x6e 0x69 0x73 0x74 0x72 0x61 0x74 0x69 0x76    st administrativ
    0x65 0x20 0x67 0x72 0x6f 0x75 0x70 0x2c 0x43 0x4e 0x3d 0x41 0x64 0x6d 0x69 0x6e    e group,CN=Admin
    0x69 0x73 0x74 0x72 0x61 0x74 0x69 0x76 0x65 0x20 0x47 0x72 0x6f 0x75 0x70 0x73    istrative Groups
    0x2c 0x43 0x4e 0x3d 0x53 0x42 0x53 0x32 0x30 0x30 0x33 0x2c 0x43 0x4e 0x3d 0x4d    ,CN=SBS2003,CN=M
    0x69 0x63 0x72 0x6f 0x73 0x6f 0x66 0x74 0x20 0x45 0x78 0x63 0x68 0x61 0x6e 0x67    icrosoft Exchang
    0x65 0x2c 0x43 0x4e 0x3d 0x53 0x65 0x72 0x76 0x69 0x63 0x65 0x73 0x2c 0x43 0x4e    e,CN=Services,CN
    0x3d 0x43 0x6f 0x6e 0x66 0x69 0x67 0x75 0x72 0x61 0x74 0x69 0x6f 0x6e 0x2c 0x44    =Configuration,D
    0x43 0x3d 0x53 0x42 0x53 0x32 0x30 0x30 0x33 0x2c 0x44 0x43 0x3d 0x6c 0x6f 0x63    C=SBS2003,DC=loc
    0x61 0x6c 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    al..............
    0x00 0x00 0x00 0x00 0x01 0x00 0x00 0x00 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x0b 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x08 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0xbc 0x01 0x00 0x00 0x0c 0x00 0x00 0x00 0x90 0x00 0x00 0x00    ................
    0x08 0x00 0x00 0x00 0x2c 0x00 0x00 0x00 0x06 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ....,...........
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xd6 0x01 0x00 0x00    ................
    0x14 0x00 0x00 0x00 0x3c 0x00 0x00 0x00 0x14 0x00 0x00 0x00 0x0a 0x00 0x00 0x00    ....<...........
    0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x03 0x00 0x00 0x66    ...............f
    0x00 0x00 0x00 0x00 0xe5 0x01 0x00 0x00 0x14 0x00 0x00 0x00 0x18 0x00 0x00 0x00    ................
    0x20 0x00 0x00 0x00 0x0a 0x00 0x00 0x00 0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00     ...............
    0x02 0x00 0x00 0x00 0x03 0x00 0x00 0x66 0x01 0x00 0x00 0x00 0xf2 0x01 0x00 0x00    .......f........
    0x30 0x00 0x00 0x00 0x10 0x00 0x00 0x00 0x20 0x00 0x00 0x00 0x0c 0x00 0x00 0x00    0....... .......
    0x01 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x03 0x00 0x00 0x00 0x1e 0x00 0x02 0x66    ...............f
    0x00 0x00 0x00 0x00 0xf6 0x01 0x00 0x00 0x46 0x00 0x00 0x00 0x30 0x00 0x00 0x00    ........F...0...
    0x20 0x00 0x00 0x00 0x30 0x00 0x00 0x00 0x04 0x00 0x00 0x00 0x02 0x00 0x00 0x00     ...0...........
    0x1e 0x00 0x06 0x66 0x03 0x00 0x08 0x66 0x03 0x00 0x04 0x66 0xfc 0x01 0x00 0x00    ...f...f...f....
    0x0c 0x00 0x00 0x00 0x90 0x00 0x00 0x00 0x40 0x00 0x00 0x00 0x2c 0x00 0x00 0x00    ........@...,...
    0x06 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0x15 0x02 0x00 0x00 0x14 0x00 0x00 0x00 0x50 0x00 0x00 0x00    ............P...
    0x4c 0x00 0x00 0x00 0x0a 0x00 0x00 0x00 0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00    L...............
    0x02 0x00 0x00 0x00 0x03 0x00 0x01 0x66 0x00 0x00 0x00 0x00 0x26 0x02 0x00 0x00    .......f....&...
    0x14 0x00 0x00 0x00 0x18 0x00 0x00 0x00 0x58 0x00 0x00 0x00 0x0a 0x00 0x00 0x00    ........X.......
    0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x03 0x00 0x01 0x66    ...............f
    0x01 0x00 0x00 0x00 0x3e 0x02 0x00 0x00 0x30 0x00 0x00 0x00 0x10 0x00 0x00 0x00    ....>...0.......
    0x58 0x00 0x00 0x00 0x0c 0x00 0x00 0x00 0x01 0x00 0x00 0x00 0x02 0x00 0x00 0x00    X...............
    0x03 0x00 0x00 0x00 0x1e 0x00 0x03 0x66 0x00 0x00 0x00 0x00 0x42 0x02 0x00 0x00    .......f....B...
    0x46 0x00 0x00 0x00 0x30 0x00 0x00 0x00 0x58 0x00 0x00 0x00 0x30 0x00 0x00 0x00    F...0...X...0...
    0x04 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x1e 0x00 0x07 0x66 0x03 0x00 0x09 0x66    ...........f...f
    0x03 0x00 0x05 0x66 0x48 0x02 0x00 0x00 0x4d 0x69 0x63 0x72 0x6f 0x73 0x6f 0x66    ...fH...Microsof
    0x74 0x20 0x45 0x78 0x63 0x68 0x61 0x6e 0x67 0x65 0x20 0x53 0x65 0x72 0x76 0x65    t Exchange Serve
    0x72 0x00 0x53 0x65 0x6e 0x64 0x20 0x74 0x68 0x69 0x73 0x20 0x69 0x74 0x65 0x6d    r.Send this item
    0x00 0x49 0x26 0x6d 0x6d 0x65 0x64 0x69 0x61 0x74 0x65 0x6c 0x79 0x00 0x26 0x49    .I&mmediately.&I
    0x6e 0x00 0x5b 0x30 0x2d 0x39 0x5d 0x00 0x4d 0x69 0x6e 0x75 0x74 0x65 0x73 0x5c    n.[0-9].Minutes\
    0x48 0x6f 0x75 0x72 0x73 0x5c 0x44 0x61 0x79 0x73 0x5c 0x57 0x65 0x65 0x6b 0x73    Hours\Days\Weeks
    0x00 0x45 0x78 0x70 0x69 0x72 0x65 0x20 0x74 0x68 0x69 0x73 0x20 0x69 0x74 0x65    .Expire this ite
    0x6d 0x00 0x4e 0x26 0x65 0x76 0x65 0x72 0x20 0x65 0x78 0x70 0x69 0x72 0x65 0x20    m.N&ever expire
    0x74 0x68 0x69 0x73 0x20 0x69 0x74 0x65 0x6d 0x00 0x49 0x26 0x6e 0x00 0x5b 0x30    this item.I&n.[0
    0x2d 0x39 0x5d 0x00 0x4d 0x69 0x6e 0x75 0x74 0x65 0x73 0x5c 0x48 0x6f 0x75 0x72    -9].Minutes\Hour
    0x73 0x5c 0x44 0x61 0x79 0x73 0x5c 0x57 0x65 0x65 0x6b 0x73 0x00                   s\Days\Weeks                  
    
    Tuesday, April 7, 2009 5:21 AM
  • For X400:
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x62 0xe9 0x62 0xa8 0x63 0xe9 0x62    .........b.b.c.b
    0x08 0x3c 0xef 0x62 0xa8 0x6b 0xef 0x62 0x9c 0x6f 0xef 0x62 0x2c 0x6f 0xef 0x62    .<.b.k.b.o.b,o.b
    0x90 0x69 0xef 0x62 0xc0 0x69 0xef 0x62 0xd4 0x66 0xef 0x62 0x30 0x69 0xef 0x62    .i.b.i.b.f.b0i.b
    0xc8 0x6c 0xef 0x62 0x54 0x6c 0xef 0x62 0xe0 0x6b 0xef 0x62 0x44 0x74 0xef 0x62    .l.bTl.b.k.bDt.b
    0xa0 0x73 0xef 0x62 0x08 0x74 0xef 0x62 0xcc 0x73 0xef 0x62 0x3c 0x64 0xef 0x62    .s.b.t.b.s.b
    Tuesday, April 7, 2009 5:23 AM
  • For SMTP:
    0x80 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xb0 0x4a 0x00 0xe6 0xaf 0x4a 0x00    ..........J...J.
    0x03 0x00 0x43 0x67 0x40 0x00 0x39 0x00 0x14 0x00 0xa4 0x67 0x02 0x01 0xa5 0x67    ..Cg@.9....g...g
    0x14 0x10 0xa6 0x67 0x02 0x01 0xe0 0x65 0x02 0x01 0xe2 0x65 0x02 0x01 0xe3 0x65    ...g...e...e...e
    0x02 0x00 0xa9 0x67 0x0b 0x00 0xad 0x67 0x03 0x00 0x07 0x0e 0x0b 0x00 0xaa 0x67    ...g...g.......g
    0x0b 0x00 0x1b 0x0e 0x03 0x00 0x17 0x0e 0x03 0x00 0xab 0x67 0x40 0x00 0x06 0x0e    ...........g@...
    0xb0 0x84 0x1a 0x00 0xb0 0x84 0x3d 0x00 0xb0 0x84 0x1d 0x0e 0x03 0x00 0x17 0x00    ......=.........
    0x0b 0x00 0xae 0x67 0x0b 0x00 0xaf 0x67 0x0b 0x00 0x57 0x00 0x0b 0x00 0x58 0x00    ...g...g..W...X.
    0x0b 0x00 0x59 0x00 0x0b 0x00 0xea 0x3f 0x40 0x00 0x48 0x00 0x02 0x01 0x47 0x00    ..Y....?@.H...G.
    0x40 0x00 0x07 0x30 0x40 0x00 0x08 0x30 0x0b 0x00 0x01 0x0e 0xfb 0x00 0x40 0x67    @..0@..0......@g
    0x02 0x01 0x45 0x67 0x14 0x00 0x4a 0x67 0x14 0x00 0x80 0x3f 0x02 0x01 0xc2 0x65    ..Eg..Jg...?...e
    0x02 0x01 0xf3 0x3f 0x02 0x01 0xf4 0x3f 0x02 0x01 0xd4 0x3f 0x03 0x00 0x23 0x0e    ...?...?...?..#.
    0xb0 0x84 0x35 0x10 0xb0 0x84 0x39 0x10 0x02 0x01 0x68 0x40 0x02 0x01 0x69 0x40    ..5...9...h@..i@
    0xb0 0x84 0x36 0x10 0x02 0x01 0x12 0x10 0x14 0x00 0x4b 0x67 0x02 0x00 0xf2 0x65    ..6.......Kg...e
    0x03 0x00 0xf3 0x65 0x03 0x00 0xe9 0x65 0x02 0x01 0xf0 0x65 0x03 0x00 0xf1 0x65    ...e...e...e...e
    0x0b 0x00 0x53 0x67 0x0b 0x00 0x08 0x67 0x03 0x00 0x00 0x66 0x03 0x00 0x01 0x66    ..Sg...g...f...f
    0x03 0x00 0x02 0x66 0x03 0x00 0x03 0x66 0x03 0x00 0x04 0x66 0xb0 0x84 0xf3 0x10    ...f...f...f....
    0x03 0x00 0x10 0x67 0x03 0x00 0x90 0x10 0x40 0x00 0x54 0x66 0x0b 0x00 0xf4 0x10    ...g....@.Tf....
    0x0b 0x00 0xf5 0x10 0x0b 0x00 0xf6 0x10 0x40 0x00 0x09 0x67 0x48 0x10 0x0c 0x67    ........@..gH..g
    0x03 0x00 0x61 0x0e 0x0b 0x00 0x62 0x0e 0x02 0x01 0xb9 0x67 0x07 0x00 0x00 0x00    ..a...b....g....
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x08 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0x1c 0x01 0x00 0x00 0x05 0x00 0x00 0x00 0xa5 0x00 0x00 0x00    ................
    0x0f 0x00 0x00 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x25 0x01 0x00 0x00    ............%...
    0x05 0x00 0x00 0x00 0xaf 0x00 0x00 0x00 0x23 0x00 0x00 0x00 0x37 0x00 0x00 0x00    ........#...7...
    0x06 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0x4a 0x01 0x00 0x00 0x0a 0x00 0x00 0x00 0xa5 0x00 0x00 0x00    ....J...........
    0x2d 0x00 0x00 0x00 0x08 0x00 0x00 0x00 0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00    -...............
    0x04 0x00 0x00 0x00 0x03 0x00 0x02 0x59 0x00 0x00 0x00 0x00 0x5c 0x01 0x00 0x00    .......Y....\...
    0x0a 0x00 0x00 0x00 0xa5 0x00 0x00 0x00 0x37 0x00 0x00 0x00 0x08 0x00 0x00 0x00    ........7.......
    0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x04 0x00 0x00 0x00 0x03 0x00 0x02 0x59    ...............Y
    0x01 0x00 0x00 0x00 0x68 0x01 0x00 0x00 0x0a 0x00 0x00 0x00 0xa5 0x00 0x00 0x00    ....h...........
    0x41 0x00 0x00 0x00 0x08 0x00 0x00 0x00 0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00    A...............
    0x04 0x00 0x00 0x00 0x03 0x00 0x02 0x59 0x02 0x00 0x00 0x00 0x6e 0x01 0x00 0x00    .......Y....n...
    0x0a 0x00 0x00 0x00 0xa5 0x00 0x00 0x00 0x4b 0x00 0x00 0x00 0x08 0x00 0x00 0x00    ........K.......
    0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x04 0x00 0x00 0x00 0x03 0x00 0x02 0x59    ...............Y
    0x03 0x00 0x00 0x00 0x78 0x01 0x00 0x00 0x49 0x6e 0x74 0x65 0x72 0x6e 0x65 0x74    ....x...Internet
    0x00 0x48 0x6f 0x77 0x20 0x64 0x6f 0x20 0x79 0x6f 0x75 0x20 0x77 0x61 0x6e 0x74    .How do you want
    0x20 0x74 0x6f 0x20 0x73 0x65 0x6e 0x64 0x20 0x61 0x74 0x74 0x61 0x63 0x68 0x6d     to send attachm
    0x65 0x6e 0x74 0x73 0x3f 0x00 0x41 0x74 0x74 0x61 0x63 0x68 0x6d 0x65 0x6e 0x74    ents?.Attachment
    0x20 0x46 0x6f 0x72 0x6d 0x61 0x74 0x00 0x26 0x44 0x6f 0x6e 0x27 0x74 0x20 0x4b     Format.&Don't K
    0x6e 0x6f 0x77 0x00 0x26 0x4d 0x49 0x4d 0x45 0x00 0x26 0x55 0x55 0x45 0x6e 0x63    now.&MIME.&UUEnc
    0x6f 0x64 0x65 0x00 0x26 0x42 0x49 0x4e 0x48 0x45 0x58 0x00                        ode.&BINHEX.
    
    Tuesday, April 7, 2009 5:24 AM
  • For SMTP=*

    0x80 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xb0 0x4a 0x00 0xe6 0xaf 0x4a 0x00    ..........J...J.
    0x03 0x00 0x43 0x67 0x40 0x00 0x39 0x00 0x14 0x00 0xa4 0x67 0x02 0x01 0xa5 0x67    ..Cg@.9....g...g
    0x14 0x10 0xa6 0x67 0x02 0x01 0xe0 0x65 0x02 0x01 0xe2 0x65 0x02 0x01 0xe3 0x65    ...g...e...e...e
    0x02 0x00 0xa9 0x67 0x0b 0x00 0xad 0x67 0x03 0x00 0x07 0x0e 0x0b 0x00 0xaa 0x67    ...g...g.......g
    0x0b 0x00 0x1b 0x0e 0x03 0x00 0x17 0x0e 0x03 0x00 0xab 0x67 0x40 0x00 0x06 0x0e    ...........g@...
    0xb0 0x84 0x1a 0x00 0xb0 0x84 0x3d 0x00 0xb0 0x84 0x1d 0x0e 0x03 0x00 0x17 0x00    ......=.........
    0x0b 0x00 0xae 0x67 0x0b 0x00 0xaf 0x67 0x0b 0x00 0x57 0x00 0x0b 0x00 0x58 0x00    ...g...g..W...X.
    0x0b 0x00 0x59 0x00 0x0b 0x00 0xea 0x3f 0x40 0x00 0x48 0x00 0x02 0x01 0x47 0x00    ..Y....?@.H...G.
    0x40 0x00 0x07 0x30 0x40 0x00 0x08 0x30 0x0b 0x00 0x01 0x0e 0xfb 0x00 0x40 0x67    @..0@..0......@g
    0x02 0x01 0x45 0x67 0x14 0x00 0x4a 0x67 0x14 0x00 0x80 0x3f 0x02 0x01 0xc2 0x65    ..Eg..Jg...?...e
    0x02 0x01 0xf3 0x3f 0x02 0x01 0xf4 0x3f 0x02 0x01 0xd4 0x3f 0x03 0x00 0x23 0x0e    ...?...?...?..#.
    0xb0 0x84 0x35 0x10 0xb0 0x84 0x39 0x10 0x02 0x01 0x68 0x40 0x02 0x01 0x69 0x40    ..5...9...h@..i@
    0xb0 0x84 0x36 0x10 0x02 0x01 0x12 0x10 0x14 0x00 0x4b 0x67 0x02 0x00 0xf2 0x65    ..6.......Kg...e
    0x03 0x00 0xf3 0x65 0x03 0x00 0xe9 0x65 0x02 0x01 0xf0 0x65 0x03 0x00 0xf1 0x65    ...e...e...e...e
    0x0b 0x00 0x53 0x67 0x0b 0x00 0x08 0x67 0x03 0x00 0x00 0x66 0x03 0x00 0x01 0x66    ..Sg...g...f...f
    0x03 0x00 0x02 0x66 0x03 0x00 0x03 0x66 0x03 0x00 0x04 0x66 0xb0 0x84 0xf3 0x10    ...f...f...f....
    0x03 0x00 0x10 0x67 0x03 0x00 0x90 0x10 0x40 0x00 0x54 0x66 0x0b 0x00 0xf4 0x10    ...g....@.Tf....
    0x0b 0x00 0xf5 0x10 0x0b 0x00 0xf6 0x10 0x40 0x00 0x09 0x67 0x48 0x10 0x0c 0x67    ........@..gH..g
    0x03 0x00 0x61 0x0e 0x0b 0x00 0x62 0x0e 0x02 0x01 0xb9 0x67 0x07 0x00 0x00 0x00    ..a...b....g....
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x08 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0x1c 0x01 0x00 0x00 0x05 0x00 0x00 0x00 0xa5 0x00 0x00 0x00    ................
    0x0f 0x00 0x00 0x00 0x08 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x25 0x01 0x00 0x00    ............%...
    0x05 0x00 0x00 0x00 0xaf 0x00 0x00 0x00 0x23 0x00 0x00 0x00 0x37 0x00 0x00 0x00    ........#...7...
    0x06 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00    ................
    0x00 0x00 0x00 0x00 0x4a 0x01 0x00 0x00 0x0a 0x00 0x00 0x00 0xa5 0x00 0x00 0x00    ....J...........
    0x2d 0x00 0x00 0x00 0x08 0x00 0x00 0x00 0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00    -...............
    0x04 0x00 0x00 0x00 0x03 0x00 0x02 0x59 0x00 0x00 0x00 0x00 0x5c 0x01 0x00 0x00    .......Y....\...
    0x0a 0x00 0x00 0x00 0xa5 0x00 0x00 0x00 0x37 0x00 0x00 0x00 0x08 0x00 0x00 0x00    ........7.......
    0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x04 0x00 0x00 0x00 0x03 0x00 0x02 0x59    ...............Y
    0x01 0x00 0x00 0x00 0x68 0x01 0x00 0x00 0x0a 0x00 0x00 0x00 0xa5 0x00 0x00 0x00    ....h...........
    0x41 0x00 0x00 0x00 0x08 0x00 0x00 0x00 0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00    A...............
    0x04 0x00 0x00 0x00 0x03 0x00 0x02 0x59 0x02 0x00 0x00 0x00 0x6e 0x01 0x00 0x00    .......Y....n...
    0x0a 0x00 0x00 0x00 0xa5 0x00 0x00 0x00 0x4b 0x00 0x00 0x00 0x08 0x00 0x00 0x00    ........K.......
    0x09 0x00 0x00 0x00 0x02 0x00 0x00 0x00 0x04 0x00 0x00 0x00 0x03 0x00 0x02 0x59    ...............Y
    0x03 0x00 0x00 0x00 0x78 0x01 0x00 0x00 0x49 0x6e 0x74 0x65 0x72 0x6e 0x65 0x74    ....x...Internet
    0x00 0x48 0x6f 0x77 0x20 0x64 0x6f 0x20 0x79 0x6f 0x75 0x20 0x77 0x61 0x6e 0x74    .How do you want
    0x20 0x74 0x6f 0x20 0x73 0x65 0x6e 0x64 0x20 0x61 0x74 0x74 0x61 0x63 0x68 0x6d     to send attachm
    0x65 0x6e 0x74 0x73 0x3f 0x00 0x41 0x74 0x74 0x61 0x63 0x68 0x6d 0x65 0x6e 0x74    ents?.Attachment
    0x20 0x46 0x6f 0x72 0x6d 0x61 0x74 0x00 0x26 0x44 0x6f 0x6e 0x27 0x74 0x20 0x4b     Format.&Don't K
    0x6e 0x6f 0x77 0x00 0x26 0x4d 0x49 0x4d 0x45 0x00 0x26 0x55 0x55 0x45 0x6e 0x63    now.&MIME.&UUEnc
    0x6f 0x64 0x65 0x00 0x26 0x42 0x49 0x4e 0x48 0x45 0x58 0x00                        ode.&BINHEX.
    
    Tuesday, April 7, 2009 5:25 AM
  • There has been a lot of discussion about the relevance of this particular ROP.  I sat down with the techincal writer and the developer and outlined the use case on a white board and they are now going back to research this and hopefully we can get closure on this next week.


    Developer Consultant
    Saturday, April 11, 2009 1:53 AM
    Moderator
  • Tom,

    Thanks for continuing to follow this up. Appreciated, as always.

    Brad
    Saturday, April 11, 2009 4:01 AM
  • Ok after a lot of debugging and dicussions with both Outlook and Exchange developers I was able to determine that the data is in fact not used by Outlook 2007.  Outlook requests the data but the response parsing code for Outlook skips over the ROP.

    I orginally thought that the Detail Templates were sent to Outlook via RopOptionsData.  So in the senario an update to a Detail Templates by an Administrator (for example User, Group, Public Folder, Contact, Mailbox Agent, and Search Dialog) is actually now handled by NSPI.  Outlook requests the Detail Templates data through the method NspiGetTemplateInfo(). 

    The data passed in RopOptionsData OptionsInfo, HelpFile, and HelpFileName can be treated as opaque data.

    Does this help?


    Developer Consultant
    Friday, April 24, 2009 6:28 AM
    Moderator
  • I can handle it being "opaque" for outlook.  However it isn't (necessarily) empty.

    Did the Exchange guys provide some information on what the OptionsInfo actually consists of?

    Is HelpFile always empty?

    Brad
    Friday, April 24, 2009 6:45 AM
  • In my research the data is duplication of functionality of NSPI that predates Active Directory.  The correct mechanism to pull the display templates is through NSPI.

    The data structure for the OptionsInfo:

    // header on option data downloaded to client
    #define MAX_PATH 260 
    struct
    {
       unsigned long sizeOfMessageDialogDisplayTable;
       unsigned long sizeofRecipentDialogDisplayTable
       char componentName[MAX_PATH + 32];
    } OptionsDataHeader;
    char MessageDialogDisplayTable[sizeOfMessageDialogTable];
    char RecipentDialogDisplayTable[sizeofRecipentDialogTable];
    

     

    And if there was a help file defined in AD you would receive the the size and the help file in the response. As for the WantWin32 flag determines the type of helpfile to bring back.  Your choices are 32 or 16 bit Windows so this gives you some idea as to the legacy of this ROP.
    Developer Consultant
    Thursday, May 7, 2009 12:49 AM
    Moderator
  • Tom,

    Thanks for chasing this down. Appreciated as always.

    Brad
    Thursday, May 7, 2009 1:00 AM