Exchange server 如何将Exchange Web服务外部邮件Id映射到Exchange内部邮件Id
有一个自行编写的应用程序(c#)通过EWS(Webservice)与Exchange进行通信。 从EWS检索到的每个邮件项都有一个base64编码字符串作为邮件标识符。 字符串是邮箱本身的GUID、一些标志和其他未知内容的串联。 正如在应用程序日志中所观察到的那样,最后48位似乎表示一个序列号,该序列号对于每个新邮件都会增加,因为base64表示也会这样做 这看起来是这样的Exchange server 如何将Exchange Web服务外部邮件Id映射到Exchange内部邮件Id,exchange-server,exchangewebservices,exchange-server-2010,Exchange Server,Exchangewebservices,Exchange Server 2010,有一个自行编写的应用程序(c#)通过EWS(Webservice)与Exchange进行通信。 从EWS检索到的每个邮件项都有一个base64编码字符串作为邮件标识符。 字符串是邮箱本身的GUID、一些标志和其他未知内容的串联。 正如在应用程序日志中所观察到的那样,最后48位似乎表示一个序列号,该序列号对于每个新邮件都会增加,因为base64表示也会这样做 这看起来是这样的 AAMkADY4NGZiNmNmL[....]DruR5FpCowxZfCWAAAqi1dWAAA= AAMkADY4NG
AAMkADY4NGZiNmNmL[....]DruR5FpCowxZfCWAAAqi1dWAAA=
AAMkADY4NGZiNmNmL[....]DruR5FpCowxZfCWAAAqi1dXAAA=
AAMkADY4NGZiNmNmL[....]DruR5FpCowxZfCWAAAqi1dZAAA=
AAMkADY4NGZiNmNmL[....]DruR5FpCowxZfCWAAAqi1dYAAA=
AAMkADY4NGZiNmNmL[....]DruR5FpCowxZfCWAAAqi1daAAA=
AAMkADY4NGZiNmNmL[....]DruR5FpCowxZfCWAAAqi1dbAAA=
AAMkADY4NGZiNmNmL[....]DruR5FpCowxZfCWAAAqi1ddAAA=
AAMkADY4NGZiNmNmL[....]DruR5FpCowxZfCWAAAqi1deAAA=
^^^^^^^^
我的目的是解码base64表示并解释位部分,以便获得exchange的内部消息id。这对于简化消息跟踪是必要的
我所面临的问题是,不管我以何种方式解释这些位,我永远不会得到一个接近内部消息id的值
目前,exchange中的内部消息id位于195XXXXXX,但被解释为long的二进制值给出了一个大约713xxxxx的值,这完全没有意义
更糟糕的是,我观察到序列中出现了一个中断:
AAAqi1kKAAA=
AAAqi1kLAAA=
AAAqi1kMAAA= (decimal 713775372)
AAAqjUbTAAA= (decimal 713901779)
AAAqjUbUAAA=
AAAqjUbVAAA=
这意味着序列号突然增加了约126'400
我无法想象exchange在EWS上下文中使用与内部不同的消息id,并在某处维护映射信息
有人知道如何获得正确的消息id吗?我相信您希望使用EWS或EWS管理的API进行转换。此处有更多信息: