WEB开发网
开发学院软件开发C语言 Visual C# 创建一个启用了邮箱的收件人 阅读

Visual C# 创建一个启用了邮箱的收件人

 2009-06-12 08:31:43 来源:WEB开发网   
核心提示: 代码说明 创建一个新的 DirectoryEntry 此代码演示了如何绑定到容器(在本例中为“用户”容器),以及如何在该容器中创建一个新用户,Visual C# 创建一个启用了邮箱的收件人(2),不要忘记表示新用户名的“cn=”项, cont

代码说明

创建一个新的 DirectoryEntry

此代码演示了如何绑定到容器(在本例中为“用户”容器),以及如何在该容器中创建一个新用户。不要忘记表示新用户名的“cn=”项。

container = new DirectoryEntry("LDAP://cn=users," + defaultNC);
user = container.Children.Add("cn=" + fullName, "user");

为新用户设置属性

1. 给 sAMAccountName 赋一个值。这是一个必需的属性。如果未指定值,则不会创建用户帐户。
2. 因为您已提供了必需属性,所以要调用 CommitChanges 将新用户保存到目录中。
3. 调用 IADs::SetPassword 以设置密码。调用 CommitChanges 之后必须进行此操作。
4. 通过修改 userAccountControl 属性启用用户。
5. user.Properties["sAMAccountName"].Add(alias);
6. user.CommitChanges();
7. user.Invoke("SetPassword", new object[]{password});
8.
9. //This enables the new user:
10. user.Properties["userAccountControl"].Value = 0x200; //ADS_UF_NORMAL_ACCOUNT
11. user.CommitChanges();

创建一个新的邮箱

1. 要获取 IMailboxStore 接口,请将 DirectoryEntry.NativeObject 转换为此类型。如果计算机上没有安装 CDOEXM,此转换在运行时将不会成功。
2. 调用 CreateMailbox 方法,并将一个有效的可分辨名称传递给您的 Exchange 组织中的一个邮箱存储。
3. 调用 DirectoryEntry 上的 CommitChanges 以保存此新邮箱。
4. //Obtain the IMailboxStore interface, create the mailbox, and commit the changes.
5. mailbox = (IMailboxStore)user.NativeObject;
6. mailbox.CreateMailbox(homeMDB);
7. user.CommitChanges();

回到顶端

疑难解答

· 您必须在域中有适当的权限才能创建用户和邮箱。通常情况下,要在一个基于 Windows 2000 的域中创建一个启用了邮箱的用户,您必须是该域的 Windows 2000 域管理员组成员。

· 如果运行此代码的计算机不是基于 Exchange 2000 Server 的,您必须在该计算机上安装 Exchange 2000 系统管理工具。如果不这样做,CDOEXM 将不可用,而且向 IMailboxStore 接口的转换将引发 InvalidCastException 响应:

未处理的“System.InvalidCastException”类型的异常出现在 MBTest.exe 中

其他信息:指定的转换无效。

· 如果您调用 IMailboxStore.CreateMailbox 时收到一条错误消息,请验证您传递给此方法的参数是否为您的组织中一个有效的邮箱存储。如果不是,您将收到类似以下内容的错误消息:

未处理的“System.Runtime.InteropServices.COMException”类型的异常出现在 MBTest.exe 中

其他信息:在服务器上没有这样一个对象。

上一页  1 2 

Tags:Visual 创建 一个

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接