使用IE9、FireFox与Chrome浏览WPF Browser Application(.XBAP)的方式
最近开始写一些WPF的小Sample和文章,但是毕竟WPF应用程式不像Silverlight那么方便的只要装个Plugin就可以透过浏览器来看执行结果,因此把脑筋动到了改用WPF Browser Application上,虽然它是WPF,但是一样可以透过浏览器来执行,这样就可以一边看文章一边看范例。
首先,来看看IE9的设定方式:
在IE9预设的设定下,是没办法正常浏览XBAP的,得要更改一下设定才行,还没更改设定之前看到的画面可能会像下图:
![]()
还好要开始这个功能非常的简单,只要点选IE9功能表的工具 -> 网际网路选项 ->切换到「安全性」页签->按下「自订等级」按钮->于XAML浏览器应用程式下面的选项中选取「启用」,并按下下方的确定钮,之后逐一按下确定关闭所有的对话视窗即可。
修改完设定之后,只要重新整理画面,原来无法正常显示的区域就恢复正常啰!!
![]()
再来,看看FireFox的替代方案:
毕竟FireFox不是微软自家的产品,所以要正常的显示XBAP的话需要透过外挂元件才行,而在.Net Framework 3.5 SP1中就包含了这个外挂元件,预设档名与路径为C:\Windows\Microsoft .NET\Framework\v3.5\Windows Presentation Foundation\NPWPF.dll
只要把它复制到FireFox安装目录下的Plugins资料夹中,就可以正常的显示XBAP的内容啰!!
(如果在Windows7里找不到这个档的话,可以看看有安装.Net Framework 3.5 SP1的XP或是Windows Server2003的相同资料夹有没有,有的话复制到Windows7一样可行)
![]()
最后,来看看Chrome得怎么修改:
很神奇的,在Chrome中如果浏览到含有XBAP的网页,它会持续的跳出说找不到xpcom.dll的错误讯息,而这个档哪里来呢?各位观众~~这个档案在FireFox的安装目录里!!!
只要将系统的Path设定中加入FireFox的安装路径就可以正常的用Chrome浏览含有XBAP的档案啦!!(当然,前提是得先安装好FireFox,神奇吧!?)
系统的Path在哪设呢?请打开控制台 -> 系统 -> 进阶系统设定 -> 环境变数 ->在系统变数清单中找到Path ->按下编辑钮->于变数值栏位后方加入; FireFox安装路径(如;C:\Program Files (x86)\Mozilla Firefox)后按下确定钮即可。
OK~在Chrome下也能正常浏览啦!!
![]()
2012/03/09补充:
万一使用的作业系统是Windows XP,又想使用Chrome浏览XBAP档,就需要辛苦一点,额外手动将以下几个位于FireFox安装资料夹下的档案,复制到Chrome安装资料夹(预设路径为C :\Users\[使用者帐号]\AppData\Local\Google\Chrome\Application )里:
mozcrt19.dll
nspr4.dll
nss3.dll
nssutil3.dll
plc4.dll
plds4.dll
smime3.dll
ssl3.dll
xpcom.dll
xul.dll
OK~Windows XP里的Chrome也可以正常浏览啦!!
![]()
使用IE9、FireFox与Chrome浏览WPF Browser Application(.XBAP)的方式的更多相关文章
- WPF, WPF Browser Application(XBAP) 和 Silverlight 的区别
由图可见,XBAP与WPF的区别是“受限的”:Silverlight与XBAP的区别是,不需要.NET Framework. 上星期與以前的同事爭論著究竟使用XBAP來開發XX用戶端 (為筆者之前開發 ...
- How to update WPF browser application manifest and xbap file with ‘mage.exe’
老外参考文章1 老外参考文章2 I created a WPF browser application MyApp then published it by ClickOnce in VS2008. ...
- Firefox、Chrome、IE9、IE8、IE7、IE6等浏览器HTTP_USER_AGENT汇总
Firefox.Chrome.IE9.IE8.IE7.IE6 浏览器HTTP_USER_AGENT汇总 结论: 浏览器 \ OS XP(IE6) XP(IE7) XP(IE8) Win7 x64(I ...
- 浏览器HTTP_USER_AGENT汇总——Firefox、Chrome、IE9、IE8、IE7、IE6
结论: 浏览器 \ OS XP(IE6) XP(IE7) XP(IE8) Win7 x64(IE9) 猎豹浏览器2.0急速模式 Chrome/21 猎豹浏览器2.0兼容模式 IE6 ...
- 兼容最新firefox、chrome和IE的javascript图片预览实现代码
这篇文章主要介绍了兼容最新firefox.chrome和IE的javascript图片预览实现代码,测试了浏览器firefox6.firefox12.chrome 25.0.1364.172 m.IE ...
- 【转发】NPAPI学习(Firefox和Chrome扩展开发 )
NPAPI学习(Firefox和Chrome扩展开发 ) 2011-11-08 14:41:02 by [6yang], 1172 visits, 收藏 | 返回 Firefox和Chrome扩展开发 ...
- CSS Hack大全-教你如何区分出IE6-IE10、FireFox、Chrome、Opera
CSS Hack大全-教你如何区分出IE6-IE10.FireFox.Chrome.Opera 转载自:http://www.jb51.net/article/50116.htm 现在的浏览器IE6- ...
- Selenium+Python:下载文件(Firefox 和 Chrome)
引自 https://blog.csdn.net/Momorrine/article/details/79794146 1. 环境 操作系统 Win10 IDE Eclipse (Oxyg ...
- CSS兼容IE6 IE7 IE8 IE9 Firefox的总结
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
随机推荐
- PHP安全编程:register_globals的安全性
如果你还能记起早期Web应用开发中使用C开发CGI程序的话,一定会对繁琐的表单处理深有体会.当PHP的register_globals配置选项打开时,复杂的原始表单处理不复存在,公用变量会自动建立.它 ...
- Yii2使用驼峰命名的形式访问控制器
yii2在使用的时候,访问控制器的时候,如果控制器的名称是驼峰命名法,那访问的url中要改成横线的形式.例如: public function actionRoomUpdate() { // }//访 ...
- Web前端开发最佳实践(5):正确闭合HTML标签,停止使用不标准的标签和属性
正确闭合HTML标签 HTML元素的内容模型定义了元素的结构,表明元素可以包含哪些内容以及元素可以有哪些属性.元素可以包含的内容包括其他元素和字符,但是也有一些元素是空元素,即不能包含任何内容,这些元 ...
- 某PCBA企业应用易普优APS实现高级计划排程案例
一.项目介绍 1.生产计划现状 某PCBA企业(以下简称A企业)的产品生产是典型的多品种.小批量.多变化的生产模式.其中产品种类有1000多种,主流的200多种,每个月数百个生产订单,分解到工序以后的 ...
- poj1753 Flip Game(BFS+位压缩)
题目链接 http://poj.org/problem?id=1753 题意 一个棋盘上有16个格子,按4×4排列,每个格子有两面,两面的颜色分别为黑色和白色,游戏的每一轮选择一个格子翻动,翻动该格子 ...
- jquery 美化弹出提示 漂亮的Dialog 对话框
三个不同的效果,分别是普通的警告,确认/取消,带一个输入框 本例用了jquery.alertify.js,请到演示页面查看 css文件也请到演示页面查看 JavaScript Code <scr ...
- lua常用函数
select (index, ···) 功能:当index为数字将返回所有index大于index的参数: 如:select(2,"a","b","c ...
- thinkphp5.0配置加载
ThinkPHP支持多种格式的配置格式,但最终都是解析为PHP数组的方式. PHP数组定义 返回PHP数组的方式是默认的配置定义格式,例如: //项目配置文件 return [ // 默认模块名 'd ...
- HDU 1231.最大连续子序列-dp+位置标记
最大连续子序列 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Sub ...
- java反射,代码优化
java的反射机制属实强大,能解决好些问题 在接手别人写的代码的时候,有一个bean类的get方法特别low,我都看不下去 重复代码写五遍,我都觉得太不合理.之后将其中代码抽取出来修改了下. publ ...