一个C/S的客户端,读取exchange ,显示用户未读邮件的数量。
点击利用Process启动IE,直接登录OWA(Exchange Web Mail),需要集成单点登陆.因为OWA站点是集成windows身份认证(AD)的,而客户端大多没有加入域。
登录C/S客户端的时候,用户输入域用户账户和口令,所以域用户信息我都可以取到,
但不知道如何把这个身份传递给IE,并让IE使用这个用户身份直接登录OWA,而不弹出windows身份认证的窗口。PS:用户本机电脑并未加入域。
-------------------------
困扰了很久,能给出C#可行代码的马上结贴给分
点击利用Process启动IE,直接登录OWA(Exchange Web Mail),需要集成单点登陆.因为OWA站点是集成windows身份认证(AD)的,而客户端大多没有加入域。
登录C/S客户端的时候,用户输入域用户账户和口令,所以域用户信息我都可以取到,
但不知道如何把这个身份传递给IE,并让IE使用这个用户身份直接登录OWA,而不弹出windows身份认证的窗口。PS:用户本机电脑并未加入域。
-------------------------
困扰了很久,能给出C#可行代码的马上结贴给分
解决方案 »
- 关于xml
- 如何把整个solution里的文件的encode 从 gb2312转换成utf8?
- 想装vs2008,sqlserver2005,silverlight,ajax...机器都需要什么配置啊
- 点击弹出对话框的确定后,跳转到指定页面
- 网站主页被链接到www.longfei.com,高手帮解决下!
- 读取数据源的问题,提示未将对象引用到实体
- 我用Coolite为什么不能直接拖控件 无效的FORMATETC结构
- 关于FindControl的问题
- 在index.aspx里动态加入了一个ascx控件,出现问题了,请教大家了
- 在asp.net里如何连接sql server数据库(高分相送)
- WCF的核心是什么 如何使用WCF
- asp.net论坛制作小问题 请求帮助
Impersonate你需要输入到登陆框里面的域用户名和密码,来启动IE。这样启动的IE在访问网站的时候会自动使用你前面所impersonate的帐号,自然也就不会弹出登陆框咯。
关于如何在.NET里面做这样的impersonate,请参考:http://support.microsoft.com/kb/889251
当然,如果说你的C/S程序使用C++之类的非托管代码开发的,那就更方便一点:http://msdn.microsoft.com/en-us/library/ms682429(VS.85).aspx那么,既然你的PC不在域里面,那就比较困难,你需要了解IE所能提供的API。据我所知,可以通过COM调用的方式来启动IE,那么我目前不知道是否同样有COM接口使得你能在弹出登陆框的时候输入用户名密码。我帮你查一下吧,不过不报太大希望。
http://msdn.microsoft.com/en-us/library/aa752084(VS.85).aspxhttp://msdn.microsoft.com/en-us/library/aa752040(VS.85).aspx能不能做到就看你自己研究了。
难道无解了么?
说实话,这种方式是很困难的,需要你对IE的实现非常了解.再说,就算你捕获了IE6的弹出对话框,你还要考虑IE7, IE8是不是也以同样的方式捕获?个人认为这条路很难走得通,除非你是真正的高手.
不能。我之前已经说过,如果在域里面,那么就可以做Impersonate,也就是你所说的附加用户参数。