在AD中存取照片
答案肯定是有的、photo,jpegPhoto,thumbnailPhoto
前端时间客户,包括领导 在问通讯录中的照片为什么存在数据库中而不是AD中,AD中的属性能不能利用起来呢?
我想照片这么大的数据,如果用户量大的,应该是不建议存放在AD端的,不然为什么微软的ad管理器都没有照片的管理项呢?
但是既然领导问了,当然要去验证一下。。
2 //获取需要修改的用户对象实体
3 private DirectoryEntry getDirectoryEntryBy(string samAccountName)
4 {
5 string path="LDAP://pcdc01.company.com/OU=上海XX软件有限公司,dc=company,dc=com";
6 DirectoryEntry rootde = new DirectoryEntry(path, "userid", "pwd"); //访问用户
7 DirectorySearcher ds = new DirectorySearcher(rootde);
8 ds.SearchScope = SearchScope.Subtree;
9 ds.Filter = "(&(&(objectCategory=person)(objectClass=user))(sAMAccountName=" + samAccountName + "))";
SearchResult sr = ds.FindOne();
if (sr != null)
{
return sr.GetDirectoryEntry();
}
else
{
return null;
}
}
2
3 string account = this.tbAccount.Text;
4 if ( account == "" )
5 {
6 MessageBox.Show("请填写帐号");
7 return;
8 }
9 DirectoryEntry de = getDirectoryEntryBy(account);
if (de == null)
{
MessageBox.Show("帐号无效");
return;
}
string photocol = this.cbbPhotoCol.Text; //那个字段存取照片,三个中选一个
System.DirectoryServices.PropertyValueCollection pvc = de.Properties[photocol];
if (pvc.Value != null && pvc.Value is byte[])
{
byte[] by = (byte[])pvc.Value;
MemoryStream Stream = new MemoryStream(by);
this.pbcontainer.Image = Image.FromStream(Stream);
}
else
{
MessageBox.Show("False");
}
2将照片存到AD中
3
4string account = this.tbAccount.Text;
5 if (account == "")
6 {
7 MessageBox.Show("请填写帐号");
8 return;
9 }
string cc = this.textBox1.Text;
if (cc == "")
{
MessageBox.Show("请选择图片");
}
else
{
Image im= Image.FromFile(cc);
MemoryStream Stream = new MemoryStream();
im.Save(Stream, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] bb=Stream.GetBuffer();
DirectoryEntry de = getDirectoryEntryBy(this.tbAccount.Text);
if (de == null)
{
MessageBox.Show("帐号无效");
return;
}
string photocol = this.cbbPhotoCol.Text;
System.DirectoryServices.PropertyValueCollection pvc = de.Properties[photocol];
pvc.Value = bb;
de.CommitChanges();
MessageBox.Show("更新成功");
}
出处:http://www.cnblogs.com/xuanye/archive/2008/05/13/1195225.html
在AD中存取照片的更多相关文章
- jsp实现仿QQ空间新建多个相册名称,向相册中添加照片
工具:Eclipse,Oracle,smartupload.jar:语言:jsp,Java:数据存储:Oracle. 实现功能介绍: 主要是新建相册,可以建多个相册,在相册中添加多张照片,删除照片,删 ...
- jsp实现仿QQ空间新建多个相冊名称,向相冊中加入照片
工具:Eclipse,Oracle,smartupload.jar.语言:jsp,Java:数据存储:Oracle. 实现功能介绍: 主要是新建相冊,能够建多个相冊,在相冊中加入多张照片,删除照片,删 ...
- 使用Ruby来实现批量更新AD中字段
准备工作 安装需要用到的gem gem install net-ldap gem install roo 准备好要更新的数据,比如exel表: /root/account.xlsx,内容如下 姓名 性 ...
- android: 从相册中选择照片
虽然调用摄像头拍照既方便又快捷,但并不是每一次我们都需要去当场拍一张照片的. 因为每个人的手机相册里应该都会存有许许多多张照片,直接从相册里选取一张现有的照 片会比打开相机拍一张照片更加常用.一个优秀 ...
- MVP+RXJAVA+RecyclerView实现sd卡根目录下的所有文件中的照片加载并显示
初学Rxjava,目前只能遍历加载指定目录下的所有文件夹中的照片,文件夹中如果还嵌套有文件夹目前还没找到实现方法. 先看mvp目录结构: 很抱歉,没有model. 接下来是view层的接口代码和pre ...
- 例说 AD中ROOM的使用
从OrCAD中将网表导入之后,区别于从AD原理图中导入,笔者经过反复试验,发现在OrCAD中定义的种种区域属性,比如像Page,Class,Room,在AD中导入之后全部消失,这就意味着你本来按照模块 ...
- iOS中判断照片和相机权限
1.照片权限判断 在iOS6之后,app中使用照片(即自带相册)需要用户权限验证,所以我们可以做一个权限判断给出友好的提示或者界面效果. 相册判断需要导入 <AssetsLibrary/Asse ...
- SharePoint自动化部署,利用PowerShell 导出/导入AD中的用户
这几个月一直在帮客户改需求,部署.我已经心力憔悴,经过一段时间的摸索,我对用PowerShell实现自动化部署也有了一些心得,比如说利用PowerShell导出导入AD中的User.在基于ShareP ...
- 在 Core Data 中存取 transformable 类型的数据
本文转载至 http://imenjoe.com/2015/04/10/CoreData-transformable-20150410/ 在开发过程中有一个需要在 Core Data 中存取 NSDi ...
随机推荐
- 基于SSH RSA的信任关系
RSA 非对称加密算法 client ---> server 私钥 公钥 1. 客户端生成密钥对 ssh-keygen -t rsa 执行后产生的密钥对会分别追加写到当前用户家目录下的以下文 ...
- python中小数点后取2位(四舍五入)以及取2位(四舍五不入)
一.小数点后取2位(四舍五入)的方法方法一:round()函数其实这个方法不推荐大家使用,查询资料发现里面的坑其实很多,python2和python3里面的坑还不太一样,在此简单描述一下python3 ...
- Python 3 并发编程多进程之进程池与回调函数
Python 3 进程池与回调函数 一.进程池 在利用Python进行系统管理的时候,特别是同时操作多个文件目录,或者远程控制多台主机,并行操作可以节约大量的时间.多进程是实现并发的手段之一,需要注意 ...
- Jwt访问api提示401错误 Authorization has been denied for this request
教程 http://bitoftech.net/2015/02/16/implement-oauth-json-web-tokens-authentication-in-asp-net-web-ap ...
- 爬虫模拟登陆之formdata表单数据
首先HTTP协议是个无连接的协议,浏览器和服务器之间是以循环往复的请求回复来交互的,交互的形式是以文件形式来进行的.比如在chrome开发者工具network中看到了 每一行是一个文件,又文件大小啊, ...
- session与cookie详解
session与cookie是什么? session与cookie属于一种会话控制技术.常用在身份识别,登录验证,数据传输等.举个例子,就像我们去超市买东西结账的时候,我们要拿出我们的会员卡才会获取优 ...
- flutter 安装详细教程
Flutter 是 Google 用以帮助开发者在 iOS 和 Android 两个平台开发高质量原生 UI 的移动 SDK.Flutter 兼容现有的代码,免费且开源,在全球开发者中广泛被使用. 安 ...
- hdu4965矩阵快速幂
这题不能直接按常规做啊,因为数组根本就开不下,转换思维A(B*A)^(n*n-1)B 这样的话数组B*A就是10*10了,然后快速幂就行了 刚开始数组都开小了,tle,还找了半天bug...还有就是定 ...
- 排序算法总结(基于Java实现)
前言 下面会讲到一些简单的排序算法(均基于java实现),并给出实现和效率分析. 使用的基类如下: 注意:抽象函数应为public的,我就不改代码了 public abstract class Sor ...
- gcd 与 扩gcd 总结
gcd 定理的证明: 模板: ll gcd(ll a,ll b) { ) return a; else return gcd(b,a%b); } 扩gcd证明: 模板: ll extgcd(ll a, ...