In MS-OXCRPC document there is no description for older EMSMDB interface methods
- For example, there are EcDoConnectEx, EcDoRpcExt2, ... but there are no EcDoConnect, EcDoRpcExt methods and their related structures descriptions.
Is there any other document that have any information about those methods and structures?
Br, Mitja
Respostas
Mitja,
This information is supplied below is as-is and because these methods have been deprecated they are not supported.
EcDoConnect
The deprecated method EcDoConnect is documented in [MS-OXRPC ] version 2.0 Section 3.1.4.1 as Opnum0Reserved. It is recommended that the supported method EcDoConnectEx (opnum 10) be used.
The deprecated method EcDoConnect establishes a new Session Context with the server. The Session Context is persisted on the server until the client disconnects by using EcDoDisconnect. This method returns a Session Context Handle (CXH) to be used by client in subsequent calls.
typedef [context_handle] void * CXH;
// Opnum 0
long __stdcall EcDoConnect(
[in] handle_t hBinding,
[out, ref] CXH * pcxh,
[in, string] unsigned char * szUserDN,
[in] unsigned long ulFlags,
[in] unsigned long ulConMod,
[in] unsigned long cbLimit,
[in] unsigned long ulCpid,
[in] unsigned long ulLcidString,
[in] unsigned long ulLcidSort,
[in] unsigned long ulIcxrLink,
[in] unsigned short usFCanConvertCodePages,
[out] unsigned long * pcmsPollsMax,
[out] unsigned long * pcRetry,
[out] unsigned long * pcmsRetryDelay,
[out] unsigned short * picxr,
[out, string] unsigned char **szDNPrefix,
[out, string] unsigned char **szDisplayName,
[in] unsigned short rgwClientVersion[3],
[out] unsigned short rgwServerVersion[3],
[out] unsigned short rgwBestVersion[3],
[in, out] unsigned long * pulTimeStamp
);
For parameter definitions please consult the [MS-OXRPC] section 3.1.4.11 that covers the supported method EcDoConnectEx (opnum 10).
EcDoRpcExt
The deprecated method EcDoRpcExt is documented in [MS-OXRPC ] Section 3.1.4.11 as Opnum9Reserved. It is recommended that the supported method EcDoRpcExt2 (opnum 11) be used.
The deprecated method EcDoRpcExt passes generic remote operation (ROP) commands to the server for processing within a Session Context. Each call can contain multiple ROP commands. The server returns the results of each ROP command to the client. This call requires an active Session Context Handle (CXH) returned from method EcDoConnectEx or the deprecated method EcDoConnect.
// Opnum 9
long __stdcall EcDoRpcExt (
[out, ref] CXH * pcxh,
[in, out] unsigned long *pulFlags,
[in, size_is(cbIn)] unsigned char rgbIn[],
[in] unsigned long cbIn,
[out, length_is(*pcbOut), size_is(*pcbOut)] unsigned char rgbOut[],
[in, out] BIG_RANGE_ULONG *pcbOut,
[in, out, length_is(*Reserved1), size_is(*Reserved1)] unsigned char Reserved0[],
[in, out] unsigned long *Reserved1,
[out] unsigned long *pulTransTime
);
Reserved0: This parameter is not used by the server. All clients must set this value to the constant NULL.
Reserved1: This parameter is not used by the server. All clients must set this value to the constant 0.
For other parameter definitions please consult the [MS-OXRPC] version 2 Section 3.1.4.12 that covers EcDoRpcExt2 (opnum 11).
Does this information resolve your issue?
Dominic Salemno
Senior Support Escalation Engineer- EditadoDominic Salemno MSFTMSFT, Moderadorquarta-feira, 8 de julho de 2009 2:25Minor Edit
- Sugerido como RespostaDominic Salemno MSFTMSFT, Moderadorquarta-feira, 8 de julho de 2009 2:43
- Marcado como RespostaDominic Salemno MSFTMSFT, Moderadorquinta-feira, 9 de julho de 2009 18:18
Todas as Respostas
Hi Mitja,
Thanks for your post regarding the MS-OXCRPC protocol specification. We will review your question and update the forum once our investigation is complete. Thanks!Richard Guthrie
Escalation Engineer - Open Protocols- Mitja,
I am the engineer who has taken ownership of your issue. I am investigating this and will update you as things progress.
Dominic Salemno
Senior Support Escalation Engineer Mitja,
The documentation published under the Open Specifications located here: http://msdn.microsoft.com/en-us/library/cc203350.aspx covers the latest version of Microsoft Products and Protocols. EcDoConnect and EcDoRpcExt have been replaced with EcDoConnectEx and EcDoRpcExt2. Therefore, it is suggested to use the latest methods in question.
Does this information assist you?
Dominic Salemno
Senior Support Escalation Engineer- Sugerido como RespostaDominic Salemno MSFTMSFT, Moderadorquarta-feira, 10 de junho de 2009 20:18
- Não Sugerido como RespostaMitja Kravos quinta-feira, 11 de junho de 2009 9:13
- Dominic,
I know that EcDoConnect and EcDoRpcExt have been replaced with EcDoConnectEx and EcDoRpcExt2. Those new methods are used by Outlook, but those old
methods are still used by MAPI(Microsoft Exchange Server MAPI Client and Collaboration Data Objects 1.2.1). And because my investigation is related to old methods I would be very grateful if there will be any documentation related to those old methods available.
Best Regards, Mitja
- EditadoMitja Kravos segunda-feira, 15 de junho de 2009 11:21
Mitja
The information you requested is for a version of Exchange or Outlook that is not supported under our Interoperability efforts. We may have some information available from prior documentation that has not gone through the same rigor in testing to ensure accuracy. We will research if this information exists and respond with what we have with the understanding that it is provided “as-is” and without support.
Dominic Salemno
Senior Support Escalation Engineer- Mitja,
I am still investigating this issue and will update you shortly.
Dominic Salemno
Senior Support Escalation Engineer Mitja,
This information is supplied below is as-is and because these methods have been deprecated they are not supported.
EcDoConnect
The deprecated method EcDoConnect is documented in [MS-OXRPC ] version 2.0 Section 3.1.4.1 as Opnum0Reserved. It is recommended that the supported method EcDoConnectEx (opnum 10) be used.
The deprecated method EcDoConnect establishes a new Session Context with the server. The Session Context is persisted on the server until the client disconnects by using EcDoDisconnect. This method returns a Session Context Handle (CXH) to be used by client in subsequent calls.
typedef [context_handle] void * CXH;
// Opnum 0
long __stdcall EcDoConnect(
[in] handle_t hBinding,
[out, ref] CXH * pcxh,
[in, string] unsigned char * szUserDN,
[in] unsigned long ulFlags,
[in] unsigned long ulConMod,
[in] unsigned long cbLimit,
[in] unsigned long ulCpid,
[in] unsigned long ulLcidString,
[in] unsigned long ulLcidSort,
[in] unsigned long ulIcxrLink,
[in] unsigned short usFCanConvertCodePages,
[out] unsigned long * pcmsPollsMax,
[out] unsigned long * pcRetry,
[out] unsigned long * pcmsRetryDelay,
[out] unsigned short * picxr,
[out, string] unsigned char **szDNPrefix,
[out, string] unsigned char **szDisplayName,
[in] unsigned short rgwClientVersion[3],
[out] unsigned short rgwServerVersion[3],
[out] unsigned short rgwBestVersion[3],
[in, out] unsigned long * pulTimeStamp
);
For parameter definitions please consult the [MS-OXRPC] section 3.1.4.11 that covers the supported method EcDoConnectEx (opnum 10).
EcDoRpcExt
The deprecated method EcDoRpcExt is documented in [MS-OXRPC ] Section 3.1.4.11 as Opnum9Reserved. It is recommended that the supported method EcDoRpcExt2 (opnum 11) be used.
The deprecated method EcDoRpcExt passes generic remote operation (ROP) commands to the server for processing within a Session Context. Each call can contain multiple ROP commands. The server returns the results of each ROP command to the client. This call requires an active Session Context Handle (CXH) returned from method EcDoConnectEx or the deprecated method EcDoConnect.
// Opnum 9
long __stdcall EcDoRpcExt (
[out, ref] CXH * pcxh,
[in, out] unsigned long *pulFlags,
[in, size_is(cbIn)] unsigned char rgbIn[],
[in] unsigned long cbIn,
[out, length_is(*pcbOut), size_is(*pcbOut)] unsigned char rgbOut[],
[in, out] BIG_RANGE_ULONG *pcbOut,
[in, out, length_is(*Reserved1), size_is(*Reserved1)] unsigned char Reserved0[],
[in, out] unsigned long *Reserved1,
[out] unsigned long *pulTransTime
);
Reserved0: This parameter is not used by the server. All clients must set this value to the constant NULL.
Reserved1: This parameter is not used by the server. All clients must set this value to the constant 0.
For other parameter definitions please consult the [MS-OXRPC] version 2 Section 3.1.4.12 that covers EcDoRpcExt2 (opnum 11).
Does this information resolve your issue?
Dominic Salemno
Senior Support Escalation Engineer- EditadoDominic Salemno MSFTMSFT, Moderadorquarta-feira, 8 de julho de 2009 2:25Minor Edit
- Sugerido como RespostaDominic Salemno MSFTMSFT, Moderadorquarta-feira, 8 de julho de 2009 2:43
- Marcado como RespostaDominic Salemno MSFTMSFT, Moderadorquinta-feira, 9 de julho de 2009 18:18

