邮箱c 如何给ad用户建立exchange邮箱(不用cdoexm)(转)_涅磐飞升的空间_百度空间[要诀]

空间邮箱  时间:2021-03-03  阅读:()

C#怎样给AD用户建立Exchange邮箱(不用CDOEXM) (转)_涅磐飞升的空间_百度空间

C#怎样给AD用户建立Exchange邮箱不用CDOEXM 转 _涅磐飞升的空间_百度空间用户名: 密码: 登录注册涅磐飞升的空间主页

博客相册个人档案好友

查看文章

C#怎样给AD用户建立Exchange邮箱不用CDOEXM 转

2010-08-31 23:48

这几天也被C DOE XM狠狠折磨了一把按照下面MSDN的标准方法添加鸟对CDOEXM的引用而且俺的cdo.dl l,cdoexm.dl l都是exchange2000工作服务器上copy下来的然后用下面MSDN提供的代码报错始终报错一条道走到黑的报错说是

System.Runtime. InteropServices.COMException (0x80072030) :在服务器上没有这样一个对象。mailbox = (IMailboxStore)user.NativeObject;mai lbox.CreateMai lbox(homeMDB) ;user.CommitChanges() ;

我可以确定我的hom eMDB扩展属性值绝对不会错因为那是用微软自家windows系统的vbs脚本直接导出到文本文件的 vbs脚本如下后面还要用它导出homeMTA和msExchHomeS erv erNames t rB ran chN ame="OU名1,OU=OU名0,O U=公司OU名"

'上面的几层路径的ou下面只有一个有邮箱的userstrDC="gdmailclus1" ' IIS服务器名s trDomain="DC=mai l,DC=xxxx" 'AD服务器DN

s trLDAP="<LDAP://"+strDC+"/OU="+st rBranchName+", "+s trDoma in+">"

Set oLDAPConn = CreateObject("AdoDB.Connection")oLDAPConn.Provider = "AdsDSOObject"oLDAPConn.open

Set oCmd = CreateObject("AdoDB.Command")oCmd.ActiveConnecti on = oLDAPConnoCmd.CommandText =strLDAP+"; (objectCategory=Person) ;Di stinguishedName,mail;SubTree"

Set oResult = oCmd.Execute

Set fso =

Wscript.CreateObject("Scripting.FileSystemObject")

Set f = fso.CreateTextFile("C:\Documents and

Settings\szadmin\桌面\homeMDB. txt")strGetUser="LDAP://"+strDC+"/"+oResult.Fields(0)

Set oUser = GetObject(strGetUser)

'wscript.echostrGetUser+vbcrl f+"name:"+oUser.name+vbcrl f+"sAMAccountName:"+oUser. sAMAccountName+vbcrlf+"serverName:"+oUser. serverNa

me+vbcrlf+"Mail:"+oUser.Mailf.Wr iteLine(oUser.homeMDB)

'wscript.echo oUser.homeMDB

'wscript.echo oUser.homeMTA

'wscript.echo oUser.mailNickName

'wscript.echo oUser.msExchUserAccountControl

'wscript.echo oUser.msExchHomeServerName

'wscript.echo oUser.mDBUseDefaults

'wscript.echo oUser.mailf.close

而且我又没法在exchange工作服务器上装开发环境没法调试只好上网找方法了。后来在网上终于搜到原来CDOEXM在C#下就是不好用有转换那一步出错的调了VB.net的一个getobject可方法就ok也有像我一样的问题的说是要整个改成VB.net就好了。天呢我至此彻底晕倒对微软的佩服再次上升鸟一层都是自家的东东能搞成这样。 。

幸好后来在一个跟帖里头找到了方法原来根本不需要CDOEXM这个烂东东就可以完成建exchange邮箱的工作直接写几个AD扩展属性就可以鸟代码如下user.Properti es["homeMDB"] .Value=homeMDB;user.Properti es["homeMTA"] .Value=homeMTA;user.Properties["mailNickName"] .Add(dr["UserID"] .ToString()) ;user.Properties["msExchUserAccountControl"] .Add(0) ;

user.Properti es["msExchHomeServerName"] .Add("/o=MAIL001/ou=mailadmin/cn=Configuration/cn=Servers/cn=Mail-SERVER") ;user.Properti es["mDBUseDefaults"] .Add("TRUE") ;user.CommitChanges() ;user是一个你找到的DirectoryEntry对象实例 dr是输入的数据集中的一个DataRowhomeMDB、 homeMTA和ms Ex chHome ServerName可以用上面的vb s脚本从服务器获得脚本中的s trBran chName改成适合你的

我的这三个参数如下供参考private string homeMDB =

"CN=BE-SG2-MDB1,CN=GDMAIL-SG2,CN=I nf ormat i onStore,CN=GDMAILEXCH,CN=Servers,CN=第一个管理组,CN=Admi nistrative

Groups,CN=xxxxORG,CN=Microsoft

Exchange,CN=Services,CN=Conf iguration,DC=mail,DC=xxxx";private string homeMTA = "CN=Microsoft

MTA,CN=GDMAILEXCH,CN=S erv ers,CN=第一个管理

组,CN=Administrative

Groups,CN=xxxxORG,CN=Microsoft

Exchange,CN=Services,CN=Conf iguration,DC=mail,DC=xxxx";private string msExchHomeServerName =

"/o=GMCCORG/ou=GDMAILEXAG/cn=Conf i gurat ion/cn=Servers/cn=GDMAILEXCH";

试过在我们的工作环境下不能同时写mai l属性会引发约束冲突异常所以之后要通过另外一个vbs脚本批量改下默认邮件地址就可以。

改默认邮件地址的VBSs trBranchName="深圳分公司"s trBranchDoma in="sz. "strAll="gd.xxxx. com"strDC="gdmailclus1"s trDomain="DC=mai l,DC=xxxx"s trLDAP="<LDAP://"+strDC+"/OU="+st rBranchName+", "+s trDoma in

Set oLDAPConn = CreateObject("AdoDB.Connection")oLDAPConn.Provider = "AdsDSOObject"oLDAPConn.open

Set oCmd = CreateObject("AdoDB.Command")oCmd.ActiveConnecti on = oLDAPConnoCmd.CommandText =

strLDAP+"; (objectCategory=Person) ;Di stinguishedName,mail;SubTree"

Set oResult = oCmd.Executewscript.echo oResult.Recordcountwhile not oResult.EOFstrGetUser="LDAP://"+strDC+"/"+oResult.Fields(0)

Set oUser = GetObject(strGetUser)

'wscript.echo oUser.name

OldMai l=oUser.mai l

I f (Len(Ol dMai l)>0) Then

OldPrimaryEmai l=Join(oUser.proxyAddresses, "!")iNotChange=inStr(Ol dPr imaryEmai l, "SMTP:"+oUser. samAccountName+"@"+strBranchDomain+strAl l)

If (iNotChange=0) Then

OldPrimaryEmai l=Rep lace(OldPrimaryEmai l, "SMTP:", "smtp:")OldPrimaryEmai l=Rep lace(OldPrimaryEmai l, "smtp:"+oUs er. samAccountName+"@"+strBranchDomai n+s trA l l, "SMTP:"+oUs er. samAccountName+"@"+strBranchDomai n+s trAl l)

Newmail=oUser. samAccountName+"@"+strBranchDomain+strAl l

'wscript.echo "mail-:"+NewMail

'wscript.echo "proxy-:"+o ldPrimaryEmai lstrProxy=Split(OldPrimaryEmail, "!")oUser.msExchPoliciesExcluded="{26491CFC-9E50-4857-861B-0CB8DF22B5D7}"

' oUser.msExchPol iciesExcluded=VBNulloUser.Mail=NewmailoUser.ProxyAddresses=strProxyoUser.SetInfo

End If

End IfoResult.MoveNext

Wendwscript.echo "done"

上一篇>> c#创建exchange邮箱问题,请教高. . . 下一篇>>CDOEXM操作转k ane boy

类别asp.net | |添加到搜藏|分享到i贴吧|浏览(474) |评论()

网友评论

该篇文章没有任何评论。

发表评论

内 容

取消回复

推荐文章

韩国少女高价卖尿原汁原味价格合理世界上最著名的菲尔人格测试

把身上的名牌脱掉你什么都不是以为洗白张柏芝 自己就不是**

织梦DEDECMS即将授权收费和维权模式 站长应对的几个方法

这两天在站长群里看到不少有使用DEDECMS织梦程序的朋友比较着急,因为前两天有看到来自DEDECMS,我们熟悉的织梦程序官方发布的公告,将会在10月25日开始全面商业用途的使用DEDECMS内容管理程序的会采用授权收费模式,如果我们有在个人或者企业商业用途的,需要联系且得到授权才可以使用,否则后面会通过维权的方式。对于这个事情,我们可能有些站长经历过,比如字体、图片的版权。以及有一些国内的CMS...

DiyVM:50元/月起-双核,2G内存,50G硬盘,香港/日本/洛杉矶机房

DiyVM是一家比较低调的国人主机商,成立于2009年,提供VPS主机和独立服务器租用等产品,其中VPS基于XEN(HVM)架构,数据中心包括香港沙田、美国洛杉矶和日本大阪等,CN2或者直连线路,支持异地备份与自定义镜像,可提供内网IP。本月商家最高提供5折优惠码,优惠后香港沙田CN2线路VPS最低2GB内存套餐每月仅50元起。香港(CN2)VPSCPU:2cores内存:2GB硬盘:50GB/R...

atcloud:480G超高防御VPS低至$4/月,美国/新加坡等6机房,512m内存/1核/500g硬盘/不限流量

atcloud主要提供常规cloud(VPS)和storage(大硬盘存储)系列VPS,其数据中心分布在美国(俄勒冈、弗吉尼亚)、加拿大、英国、法国、德国、新加坡,所有VPS默认提供480Gbps的超高DDoS防御+不限流量,杜绝DDoS攻击骚扰,比较适合海外建站等相关业务。ATCLOUD.NET是一家成立于2020年的海外主机商,主要提供KVM架构的VPS产品、LXC容器化产品、权威DNS智能解...

空间邮箱为你推荐
急救知识纳入考试急救证容易拿到么?今日油条油条是怎样由来嘀动网动网和爱动网各自的优势是什么?冯媛甑尸城女主角叫什么名字同ip网站同IP网站9个越来越多,为什么?www.e12.com.cn有什么好的高中学习网?789se.comwuwu8.com这个站长是谁?www.kanav001.com长虹V001手机小游戏下载的网址是什么www.se333se.com米奇网www.qvod333.com 看电影的效果好不?百度指数词百度指数是指,词不管通过什么样的搜索引擎进行搜索,都会被算成百度指数吗?
域名管理 服务器配置技术网 flashfxp怎么用 dreamhost eq2 南昌服务器托管 促正网秒杀 北京双线机房 世界测速 vip购优惠 中国网通测速 昆明蜗牛家 免费网页空间 香港新世界中心 创建邮箱 免费ftp 浙江服务器 阿里云邮箱登陆地址 netvigator 美国十大啦 更多