仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 575|回复: 10
打印 上一主题 下一主题

[学习教程] ASP教程之用ASP代码创立EXCHANGE2000用户

[复制链接]
简单生活 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 23:22:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
对于中小型web应用来说,php有很强的竞争力,linux+apache+mysql+php(lamp)的组合几乎可以胜任绝大多数网站的解决方案,对于大型应用来讲,对于系统架构要求更高,需要有成熟的框架支持,jsp的struts是个不错的框架,国内介绍它的资料也非常多,应用逐渐广泛起来。asp就不用说了,创立
前段工夫写出一个程序,只是不完美,不克不及判别是不是存在该用户,如今增补查找功效。
代码不敷的地方,希不吝珠玉!
完全代码以下:

<%@Language=VBScriptcodepage="936"%>
<%OptionExplicit%>
<HTML>
<HEAD>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<METANAME="GENERATOR"Content="MicrosoftVisualStudio7.0">
</HEAD>
<BODY>
<%
程序目标:创立EXCHANGE2000邮箱用户
程序完成体例:起首在AD(ACTIVEDIRECTORY:举动目次)中查找是不是有该用
户,假如有则提醒用户该名字已存在,没有则创立该用户,
并为该用户创立邮箱。
程序计划:skyword,skyword@21cn.com
程序日期:2001-06-27
必要注重的成绩:程序利用中,应该存眷LDAP的分歧。而且程序的运转必要比
较主高的运转权限(我利用是办理员权限,呵呵对照不平安,
人人在实践利用中要注重,否则被人夺取了帐号不要怪我。
我也不太会设置),必要在IIS中设置(之前就是由于不懂得
,走了很多弯路:))
别的另有一种计划,查找用户可分离数据库查找,我想人人
会更熟习一些,只是要记得在初始数据时,要把盘算机内所
有的帐号都要纪录进数据库,否则就不克不及筹办判别是不是该用
户,由于AD只判别是不是有该用户,而不论该在甚么地位,这
点人人要注重。
程序是顶用到一些常识点均加以正文,但愿对人人对所匡助
别的必要注重的是帐号名字不克不及小于2位,并且不克不及利用中文
名字.
DimobjUser
DimobjContainer
DimobjMailbox
DimobjMail
Dimrecipname,recip
DimServerName,DomainName,emailname,FirstName,LastName,password
判别用户是不是存在
DimstrQuery,objConn,objRs,strResult
查询语句:语法:要找甚么,即查找基(<LDAP://DC=program,DC=org>);
在目次的甚么中央找(&(objectCategory=person)(sAMAccountName=用户
名))(用户为?的用户;找到工具的属性(sAMAccount,ADsPath)(用户名,
LDAP地点);查找的局限(subTree:查找搜刮基以下的全部子树中)。例句
就是上面这句.
详细细节请参看《ASP3初级编程》P644,机器产业出书社(好象精髓区内
有这本书的电子文档,这本本书真的不错,值得购置)
strQuery="<LDAP://DC=program,DC=org>;(&(objectCategory=person)"&_
"(sAMAccountName="&Request.Form("txtUserName")&"));"&_
"sAMAccountName,ADsPath;subTree"
翻开ADSI
SetobjConn=Server.CreateObject("ADODB.Connection")
objConn.Provider="ADsDSOObject"
上面这句是用正当用户翻开,否则查找的了局有误,本例中利用办理员帐号
objConn.Open"ActiveDirectoryProvider","CN=Administrator,CN=users,DC=program,DC=org","skyword"
查找用户是不是存在,不存在则创立用户
SetobjRs=Server.CreateObject("ADODB.Recordset")
objRs.OpenstrQuery,objConn
ifnotobjRs.EOFthen
strResult=False
Response.Write"用户已存在"
else
创立用户
strResult=True
Endif
objRs.Close
SetobjRs=Nothing
objConn.Close
SetobjConn=Nothing
IfstrResult=TrueThen
创立用户的代码
ServerName,DomainName是ADSI必要的LDAP信息,是必须的。
ServerName="skyword.program.org"
DomainName="DC=program,DC=org"
emailname=Request.Form("txtUserName")
password=Request.Form("txtPassword")
recip="CN="&emailname
上面这语个IF语句没几代价。:)
ifRequest.Form("txtTruename")""then
LastName="sky"
FirstName="Word"
else
LastName="Last"
FirstName="Name"
endif
翻开工具
SetobjContainer=GetObject("LDAP://"&ServerName&"/OU=China.org,"&DomainName)
创立帐号
SetobjUser=objContainer.Create("User",recip)
objUser.Put"samAccountName",emailname帐号
objUser.Put"sn",LastName
objUser.Put"givenName",FirstName
objUser.Put"DisplayName",emailname&"@hina.org"显现的名字
objUser.Put"mail",emailname&"@China.org"
objUser.Put"userPrincipalName",emailname&"@China.org"用户登录帐号
objUser.SetInfo写进AD中
objUser.SetPasswordpassword用户暗码
objUser.AccountDisabled=False帐号失效
objUser.SetInfo写进AD,必定要,为何我也不分明
创立邮箱
SetobjMailbox=objUser
上面的LDAP是查出来的,安装分歧,LDAP会有所分歧。
objMailbox.CreateMailbox"LDAP://skyword.program.org/"&_
"CN=MailboxStore(SKYWORD),CN=FirstStorageGroup,"&_
"CN=InformationStore,CN=SKYWORD,CN=Servers,"&_
"CN=FirstAdministrativeGroup,CN=AdministrativeGroups,"&_
"CN=ecitye,CN=MicrosoftExchange,CN=Services,"&_
"CN=Configuration,DC=program,DC=org"
objUser.SetInfo
SetobjContainer=Nothing
SetobjUser=Nothing
SetobjMailbox=Nothing
上面是复杂的毛病处置。
iferr0then
Response.Write"创立用户失利!请重试一次<br>"
Response.Write"<inputtype=buttonvalue=重试一次>"
Response.Write"<inputtype=buttonvalue=前往>"
else
以下是复杂的测试
SetobjMail=Server.CreateObject("CDONTS.NewMail")
objMail.Send"Admins@china.org",emailname&"@china.org","Welcome","WelcomeuseChina.orgMail"
setobjMail=Nothing
Response.Writeemailname&"用户已乐成创立!!!!"&"<br>三秒后导向登录页!"
Response.AddHeader"refresh","3;url=http://mail.china.org"
endif
EndIf
%>
</BODY>
</HTML>

当然了,现在国内CRM厂商的产品与其说是CRM,但从至少从我的角度分析上来看,充其量只是一个大型的进销存而已了,了解尚浅,不够胆详评,这里只提技术问题
若相依 该用户已被删除
沙发
发表于 2015-1-20 09:35:18 | 只看该作者
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
乐观 该用户已被删除
板凳
发表于 2015-1-25 13:53:42 | 只看该作者
封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
admin 该用户已被删除
地板
发表于 2015-2-1 10:01:46 | 只看该作者
另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件)
因胸联盟 该用户已被删除
5#
发表于 2015-2-2 15:13:57 | 只看该作者
学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。
爱飞 该用户已被删除
6#
发表于 2015-2-2 20:04:59 | 只看该作者
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
老尸 该用户已被删除
7#
发表于 2015-2-3 12:48:49 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
飘灵儿 该用户已被删除
8#
发表于 2015-2-26 16:26:00 | 只看该作者
学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。
分手快乐 该用户已被删除
9#
发表于 2015-3-8 16:05:00 | 只看该作者
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
山那边是海 该用户已被删除
10#
发表于 2015-3-16 04:06:01 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
简单生活 该用户已被删除
11#
 楼主| 发表于 2015-3-22 20:10:16 | 只看该作者
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2025-1-10 04:10

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表