欢迎来到天天文库
浏览记录
ID:9797368
大小:668.88 KB
页数:8页
时间:2018-05-10
《批量为lync用户添加头像》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、批量为LYNC用户添加头像2010-12-0823:25:42标签:LYNC批量头像用户版权声明:原创作品,谢绝转载!否则将追究法律责任。LYNC客户端现在做得更加人性化了,其中一点就是用户可以使用头像来彰显个性。这个功能大家都比较喜欢,头像可以用户自己添加,但是要用网络路径,所以用户可能不会添加。所以由管理员来添加是最方便的。今天我们来看看怎么批量的为用户添加头像。我们先登录看看。默认的图像,光秃秃的。很是不好看。不过通过以前的帖子,我们还知道这个图像的原型是微软的创始人盖茨先生,还是先拜一个!开始吧!我们要实现准备好一些照片,照片不要超过大小不要超过30KB,所以尺寸也要控制好
2、,一般就96X96就差不多了,太大了没有意义,因为这些照片是存在AD内的,所以如果太大的话,会导致AD的数据库增大,从而影响复制。照片就采用姓名来命名就好了,因为我们的脚本一会会读取到这个名字,然后用这个名字去搜索AD。大家可以看我的实例,我AD里面的用户名字是张三,那么照片也是张三。AD里面用户的名称为张三,而AD属性里面对应名称字段的值为name,要以这个为准。因为我们一会脚本搜索的属性也是这个name属性。照片就非常简单了,用户的名字为文件名。AD里面存照片对应的值为thumbnailPhoto,我们利用adsiedit.msc看看现在的值为空。脚本内容:红色地方为关键,主要
3、是第一个为照片所存放的文件夹。第二个标为红色是告诉大家,我们查询的是name属性。ConstForReading=1'图片存的目录InDir="C:photo"Setfso=CreateObject("Scripting.FileSystemObject")setoIADS=GetObject("LDAP://RootDSE")strDefaultNC=oIADS.Get("defaultnamingcontext")SettheConn=CreateObject("ADODB.Connection")theConn.Provider="ADsDSOObject"theConn.
4、Open"ADsProvider"SettheCmd=CreateObject("ADODB.Command")theCmd.ActiveConnection=theConnSetobjRecordSet=CreateObject("ADODB.Recordset")ForEachtFileInfso.GetFolder(InDir).FilestName=tFile.NametName=Left(tName,InStrRev(tName,".")-1)strQuery=";"&"(&(objectClass=person)(nam
5、e="&tName&"));name,adspath;subtree"theCmd.CommandText=strQuerySetobjRS=theCmd.ExecuteIfobjRS.RecordCount=0ThenMsgBox"Can'tfindaccountfor"&tNameElseSetobjUser=GetObject(objRS("adspath"))ObjUser.Put"thumbnailPhoto",ReadByteArray(tFile.Path)ObjUser.SetInfoEndIfNextFunctionReadByteArray(strFileNam
6、e)ConstadTypeBinary=1DimbinSetbin=CreateObject("ADODB.Stream")bin.Type=adTypeBinarybin.Openbin.LoadFromFilestrFileNameReadByteArray=bin.ReadEndFunction双击执行,然后先不要急着去登录用户,先去看看用户的值改变了没有。我们看到张三这个用户的thumbnailphoto已经有值了。我们再登录看看。头像已经出来了。这里也看到了我们定义给用户图像。过程就这么简单,如果你有多用户,就批量的把照片弄到文件夹里,然后双击脚本执行吧。前提条件是这些用
7、户必须要存在于AD内,不然脚本是要报错的。如果大家想了解脚本具体的含义,欢迎向我提问。本文出自“WW的统一沟通”博客,谢绝转载!
此文档下载收益归作者所有