稻草C 怎样给AD用户建立Exchange邮箱(不用CDOEXM)(转)_涅磐飞升的空间_百度空间(C how to AD users to establish a Exchange mailbox (not CDOEXM) (to) _ Nirvana soaring space _ Baidu space)

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

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

空间_百度空间C# how to AD users to establish a Exchangemailbox (not CDOEXM) (to) _ Nirvana soaring space _ Baiduspace

C#how to AD users to establish a Exchange mailbox (not CDOEXM)(turn) space Baidu space _Username: Password: _ Nirvanasoaring soaring space home page login Nirvana

Blogs, albums, personal files, good friends

View Article

How does C#create Exchange mailboxes (not CDOEXM) for AD users?2010-08-31 23:48

These days have also been CDOEXM torture a, in accordance withthe following standard method of MSDN, add bird reference toCDOEXM, and my cdo.dll, cdoexm.dll are exchange

2000 work on the server copy down, and then use the followingMSDN to provide the code, reported wrong, always reported wrong,a road to the black newspaper error! Say yes:

System.Runtime. InteropServices.COMException (0x80072030) :there is no such object on the server.

Mailbox = (IMailboxStore) user.NativeObject;

Mailbox.CreateMailbox (homeMDB) ;

User.CommitChanges () ;

I can be sure that the homeMDB extended attribute value mustbe wrong, because it is derived directly from Microsoft' s ownwindows vbs script system to a text file, vbs script, behindwill use the export homeMTA and msExchHomeServerName

StrBranchName= "OU name 1, OU=OU name 0, OU= company OU"""There is only one mailbox user below the Ou of the upper layersof the path. "

StrDC= "gdmailclus1"' IIS server name

StrDomain= "DC=mail, DC=xxxx", 'AD server, DN

S trLDAP=, "<LDAP://", "+s trDC+", "/OU=", "+st rBranchName+","+strDomain+" >"

Set oLDAPConn = CreateObject ("AdoDB.Connection")

OLDAPConn.Provider = "AdsDSOObj ect""

OLDAPConn.open

Set oCmd = CreateObject ("AdoDB.Command")

OCmd.ActiveConnecti on = oLDAPConn

OCmd.CommandT ext =

"StrLDAP+"; (objectCategory=Person) ; Distingui shedName; mail;SubTree"

Set oResult = oCmd.Execute

Set FSO=Wscript.CreateObject ("Scripting.FileSystemObject")"Set f = fso.CreateTextFile" ("C:\Documents and"

Sett ings\szadmin\ desktop \homeMDB.txt ""

StrGetUser= "LDAP://", "+strDC+" / "+oResult.Fields (0)"Set oUser = GetObject (strGetUser)

'wscript.echo

StrGetUser+vbcrlf+ "name:", "+oUser.name+vbcrlf+",

"sAMAccountName:", "+oUser. sAMAccountName+vbcrlf+",

"serverName:", "+oUser. serverName+vbcrl f+", "Mai l:",

"+oUser.Ma i l"

F.Wr iteLine (oUs er.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.mail

F.close

Moreover, I can not work in the exchange server on thedevelopment environment, can not debug, and had to find a wayonline. Later on the Internet finally found, the originalCDOEXM in C# is not good, the conversion step error, adjustinga GetObject VB.net method on the OK, I also like the same problem,that is to the changed VB.net well.

God, I completely fainted at this point, the admiration ofMicrosoft, once again rising birds, are their own East and West,can do so. .

Fortunately, later found in a thread inside the method, theoriginal need not CDOEXM this rotten Dongdong, you can completethe construction of exchange mailbox work, directly write a fewAD extensions properties can be birds, the code is as follows: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=mai ladmin/cn=Configurat ion/cn=Servers/cn=Mai l-SERVER") ;

User.Properti es["mDBUseDefaults", "] .Add" ("TRUE") ;

User.CommitChanges () ;

User is a DirectoryEntry object instance that you find, and Dris a DataRow in the input data set

HomeMDB, homeMTA, and msExchHomeServerName can be obtainedfrom the server using the above vbs script, and thestrBranchName in the script is changed to suit you

These three parameters of mine are as follows:

Private, string, homeMDB =

"CN=BE-SG2-MDB1, CN=GDMAI L-SG2, CN=I nformat i onSt ore,

CN=GDMAILEXCH, CN=Servers, CN=, the first management group,CN=Administrative

Groups, CN=xxxxORG, CN=Mi crosof t

Exchange, CN=Services, CN=Conf i gurat ion, DC=mai l, DC=xxxx";

Private string homeMTA = "CN=Microsoft"

MTA, CN=GDMAILEXCH, CN=Servers, CN=, the f irst managementgroup, CN=Admini strative

Groups, CN=xxxxORG, CN=Mi crosof t

Exchange, CN=Services, CN=Conf i gurat ion, DC=mai l, DC=xxxx";Private, string, msExchHomeServerName =

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

Trying to write the mail attribute in our work environment doesnot cause a constraint conflict exception, so you can changethe default mail address in batches by another VBS script.Change the default mail address of VBS:

StrBranchName= "Shenzhen branch""

S trBranchDoma in= "s z. ""

StrAll= "gd.xxxx.com""

StrDC= "gdmailclus1""

StrDomain= "DC=mai l, DC=xxxx. ""

S trLDAP=, "<LDAP://", "+s trDC+", "/OU=", "+st rBranchName+",

"+strDomain+" >"

Set oLDAPConn = CreateObject ("AdoDB.Connection")

OLDAPConn.Provider = "AdsDSOObj ect""

OLDAPConn.open

Set oCmd = CreateObject ("AdoDB.Command")

OCmd.ActiveConnecti on = oLDAPConn

OCmd.CommandT ext =

"StrLDAP+"; (objectCategory=Person) ; Distingui shedName; mail;SubTree"

Set oResult = oCmd.Execute

Wscript.echo oResult.Recordcount

While not oResult.EOF

StrGetUser= "LDAP://", "+strDC+" / "+oResult.Fields (0)"Set oUser = GetObject (strGetUser)

'wscript.echo oUser.name

OldMai l=oUser.mai l

If (Len (OldMail) >0) Then

OldPrimaryEmai l=Join (oUser.proxyAddres ses, "!")

INotChange=inStr (OldPrimaryEmai l, SMTP: , +oUser. )

“@” strbranchdomain sAMAccountName + + +稻草

如果inotchange = 0然后oldprimaryemai l =取代ol dprimaryemai l “即”  “即” oldprimaryemail =取代oldprimaryemail ”即“+ ouser。sAMAccountName + “@” + strbranchdomai n +稻草 ”即“+ ouser。sAMAccountName + “@” + strbranchdoma in +稻草newmai l = ouser。 sAMAccountName + “@” + strbranchdomain +稻草

“wscript. echo”邮件 “+ newmail

“wscript. echo”代理 “+ oldprimaryemailstrproxy =分裂oldprimaryemail “ ” ouser。 msexchpoliciesexcluded

= “{ 26491cfc-9e50-4857-861b-0cb8df22b5d7 }”

“ouser msexchpoliciesexcluded = vbnull。ouser邮件= newmai l。

ouser ProxyAddresses = strproxy。ouser. setinfo

最后如果

最后如果oresult.movenext

走wscript.echo “完成”

上一篇> > C #创建交换邮箱问题请教高„下一篇> > c doexm操作转kaneboy

类别 A SP.NET | |添加到搜藏|分享到我贴吧|浏览474 |评论网友评论

该篇文章没有任何评论。

发表评论

内容

取消回复

推荐文章

牦牛云(3.5USD/月 )阿里云国际版云服务器 1核1G40G

收到好多消息,让我聊一下阿里云国际版本,作为一个阿里云死忠粉,之前用的服务器都是阿里云国内版的VPS主机,对于现在火热的阿里云国际版,这段时间了解了下,觉得还是有很多部分可以聊的,毕竟,实名制的服务器规则导致国际版无需实名这一特点被无限放大。以前也写过几篇综合性的阿里云国际版vps的分析,其中有一点得到很多人的认同,那句是阿里云不管国内版还是国际版的IO读写速度实在不敢恭维,相对意义上的,如果在这...

Hosteons - 限时洛杉矶/达拉斯/纽约 免费升级至10G带宽 低至年$21

Hosteons,一家海外主机商成立于2018年,在之前还没有介绍和接触这个主机商,今天是有在LEB上看到有官方发送的活动主要是针对LEB的用户提供的洛杉矶、达拉斯和纽约三个机房的方案,最低年付21美元,其特点主要在于可以从1G带宽升级至10G,而且是免费的,是不是很吸引人?本来这次活动是仅仅在LEB留言提交账单ID才可以,这个感觉有点麻烦。不过看到老龚同学有拿到识别优惠码,于是就一并来分享给有需...

GreenCloudVPS($30/年),500G大硬盘VPS,10Gbps带宽

GreenCloudVPS最近在新加坡DC2节点上了新机器,Dual Xeon Silver 4216 CPU,DDR4内存,10Gbps网络端口,推出了几款大硬盘VPS套餐,基于KVM架构,500GB磁盘起年付30美元。除了大硬盘套餐外,还加推了几款采用NVMe硬盘的常规套餐,最低年付20美元。不过需要提醒的是,机房非直连中国,尤其是电信用户ping值感人,包括新加坡DC1也是如此。大硬盘VPS...

空间邮箱为你推荐
著作权登记怎么登记著作权蓝瘦香菇被抢注最近火爆朋友圈的蓝瘦 香菇是什么意思?敬汉卿姓名被抢注身份通被人注册了我该怎么办kaixin.com开心网。www.kaixin.com是什么时间出来的。丑福晋历史上真正的八福晋是什么样子的?www.765.com哪里有免费的电影网站www.765.com下载小说地址斗城网女追男有多易?喜欢你,可我不知道你喜不喜欢我!!平安夜希望有他陪我过partnersonline我家Internet Explorer为什么开不起来dadi.tvApple TV是干嘛的?怎么用?多少钱?
asp网站空间 xenvps 国外永久服务器 主机 linode代购 美国主机代购 68.168.16.150 12306抢票攻略 三拼域名 圣诞促销 169邮箱 免费cdn 免费网页空间 上海联通宽带测速 免费私人服务器 无限流量 google台湾 www789 服务器硬件配置 winserver2008 更多