0

我们目前有一个特定的格式来定义我们的电子邮件地址,基于名称。该系统起源于前一段时间,并开始成为一个障碍。

我们想转向一种新的格式,基于

<first name initial><second name initial><last name>@organisation.com

但是,我们不只是想重命名邮箱等,而是选择为所有当前用户保留现有的电子邮件地址,而是为新用户使用新表单。此外,我们希望为所有使用旧格式的邮箱添加一个邮件别名。

谁能建议一种相对直接的方法来通过代码添加这些别名?提取用户的姓名详细信息不是问题,只需将别名添加到邮箱即可。我们目前正在为大多数用户运行 exchange 2003,但正处于 2007 年迁移的边缘,2007 年的奇数用户也是如此(目前两台服务器并排运行)。

我读过所有的 Exchange 2007 管理都应该使用 2007 工具完成,而不是像以前那样使用 Active Directory,所以所有这些都可以通过 Exchange 2007 API 执行,即使对于 2003 年的“旧邮箱”(如在交换)?

基本上我只是在寻找一个好的方向去这里;我从来没有真正为交换做过任何编码。谢谢!

4

3 回答 3

1

这是一个 MS KB,描述了通过扩展 MAPI 修改别名。看起来您需要 Exchange Developers Kit 来执行此操作。

http://support.microsoft.com/kb/183249

于 2009-04-17T05:08:17.770 回答
1

我在回答问题后发布此内容,但是您是否有任何理由不只是使用收件人政策?

于 2009-05-13T20:04:04.737 回答
0

最后,我发现 Powershell 是迄今为止最简单的方法。这是我最终使用的脚本框架,展示了如何向每个邮箱添加额外的地址:

$mailboxes = get-mailbox | sort Name

foreach($mailbox in $mailboxes)
{
    ...
    # Logic for working out the new address
    ...

    $mailbox.EmailAddresses += $newAddress
    $mailbox | set-mailbox
}

为了完整起见,此脚本在新的 Exchange 2007 服务器上运行。我最初担心将地址添加到驻留在旧 2003 服务器上的邮箱中,这不是问题。旧邮箱也已更新。

于 2009-05-05T23:45:59.933 回答