`
xidajiancun
  • 浏览: 492425 次
文章分类
社区版块
存档分类
最新评论

修改web office apps 默认在浏览器中打开

 
阅读更多

最近在搞鼓web office apps的时候发现,在新建文档的时候,

image

IE浏览器会默认检测本机是否安装了office系列,安装了的话会尝试用客户端office打开模板文档新建。

下图是客户端安装了office 2007 sp2版本的情况(测试了三个版本的office,office 2003、office 2007、office 2007 sp2,发现office 2007 sp2在新建过程中最趋稳定,并且能够识别form认证的站点文档)

clip_image002

调用客户端的代码实际是跟下面三个ActiveX有关

ActiveXObject("SharePoint.OpenDocuments.1");
ActiveXObject("SharePoint.OpenDocuments.2");
ActiveXObject("SharePoint.OpenDocuments.3");

有兴趣的话可以运行下面的代码测试一下

<script type="text/javascript">

openDocObj = new ActiveXObject("SharePoint.OpenDocuments.2"); 

openDocObj.CreateNewDocument("http://www.abc.com/documents/sampleTemplate.dot", "http://www.abc.com/documents/");

</script>

因为我们无法控制客户端是否安装了哪个版本的office,以及不同版本的office带来的问题,所以统一将新建文档的步骤都放在浏览器中进行,如图:

clip_image002[6]

像这种功能微软应该会想到,所以其实我们可以在网站集功能中找到相关的设置:

image

首先要保证sharepoint网站开启了office web apps

然后把默认情况下,在客户端应用程序中打开文档停用掉。

为了保证成功率,再iisreset一下.

不过我在操作这个地方的时候出现问题了,这些步骤看上去仿佛都很完美,按道理说经过这些步骤后,web office 应该会忽略客户端office的调用,但是事与愿违,“星星还是那个星星,月亮还是那个月亮”,它还是调用客户端的office,汗!(不清楚这个情况到底是个例,还是这个问题是微软的一个bug,将来可能会修复

既然按正常方式无效,那我们就自己改吧

其实在新建文档的时候,调用了core.js里面的一个函数

function createNewDocumentWithRedirect(e, a, b, f, d, g, c) {
    a: ;
    if (g)
        if (IsClientAppInstalled(b))
            createNewInClient(e, a, b, f);
        else
            createNewInBrowser(d, a, c);
    else if (IsClientAppInstalled(b) && c != 1)
        createNewInClient(e, a, b, f);
    else
        createNewInBrowser(d, a, c)
}


行了,我们就手动把函数改一下,只留下

createNewInBrowser(d, a, c)

即可。

iisreset,OK,问题解决。

分享到:
评论

相关推荐

    Office Web Apps 2013 安装配置文档

    Office Web Apps 2013 是微软提供的一款在线版本的办公软件套件,它使得用户能够在Web浏览器中查看、编辑和共享Word、Excel、PowerPoint和OneNote文档。本安装配置文档主要涵盖如何在Windows环境中安装和配置Office ...

    部署 Office Web Apps Server1

    【部署 Office Web Apps Server】是针对IT专业人员的一项任务,主要目的是在本地环境中设置Office Web Apps Server,以便与SharePoint 2013和Lync Server 2013协同工作,提供在线预览和编辑Office文档的功能。Office...

    owc报表的一些问题

    OWC(Office Web Components)是微软提供的一组用于在 Web 应用程序中显示、编辑和创建 Microsoft Office 文件的技术。它允许用户在没有安装完整 Office 套件的情况下查看和编辑 Office 文件。 #### 问题背景 根据...

    收集的一些 asp.net 网页查看 word execl ppt

    要在网页中预览Office文档,通常需要使用特定的控件或服务,如Microsoft的Office Web Apps Server(现已被Office Online Server取代)或第三方解决方案,如Aspose、Spire等。这些工具可以解析Office文档内容,并将...

    SugarCRM开发帮助文档

    - **云连接器概览**:SugarCRM的云连接器允许系统与第三方云服务进行无缝集成,比如Google Apps、Microsoft Office 365等。 #### 三、应用框架详解 - **入口点**:入口点是指系统开始执行的地方,通常是一个PHP...

    新版Android开发教程.rar

    � 暂不具备 Push Mail 和 Office(DataViz 、 QuickOffice 计划近期推出 ) 功能,目前主要面向的是普通消费 者 用户,对商业用户支持尚弱。 Android Android Android Android 带来的影响 ANDROID 的推出后可能影响的...

Global site tag (gtag.js) - Google Analytics