原文:VSTO学习笔记(十五)Office 2013 初体验

Office 2013 近期发布了首个面向消费者的预览版本,我也于第一时间进行了更新试用。从此开始VSTO系列全面转向Office 2013平台,即VSTO 5.0。

本系列所有测试代码均在Visual Studio 2012 Ultimate RC + Office 2013 Professional Plus x64 Preview 上测试通过

为了配合Windows 8,微软的很多软件风格都逐渐Metro化,Office作为拳头产品自然不能例外,上面就是新版Office Logo,所有产品图标也改版了:

注意下载时不要下载在线安装版本,下载.exe格式的离线版本:

Office 2013 Pro Plus

Project 2013 Pro

Visio 2013 Pro

32位、64位都有,需要Windows Live ID注册一下即可,激活序列号会在下载页面提供。

Office 2013 新特性主要有:(参照TechNet摘译)

1、新的外观与样式,支持Windows RT

2、社交网络集成

3、Office 365、Office Web App进一步增强(漫步云端)

4、安全性增强

5、自定义一键安装部署

6、其他细节性功能增强

作为开发人员我比较关注的是新的开发工具,除了传统的插件开发外,Office 2013带来了一种新的程序,即Office App,分为Office Web App和Office Desktop App。

开发代号为"Napa",在Office 365中提供了在线的开发环境,可以在线开发、调试、部署。具体参见微软高管的一篇博客

微软也发布了VS 2012 RC版本的Office开发工具,可以在Web Platform Installer 4.0中下载

安装后就可以看到模板了:

最后开发一个Hello Word程序:

新建一个App for Office 2013项目:

目前Office App有三种类型:

我选择的Task Pane 类型,有两个项目:

Task Pane相当于是个Web项目,在Office 中嵌入一个网页。微软基于jQuery将Office 2013的对象模型公开成了JavaScript接口:

可以在JavaScript中与Office进行交互,相当于JavaScript版本的PIA(主互调程序集)。

我用NuGet将jQuery更新到了1.7.2,其他没动,注意先启用IE的脚本调试功能:

F5运行,对打开Excel:

在Excel的右边多了个面板,就是我们的Office App,功能很简单,获取或设置Excel选中单元格中的内容。

在Excel项目的bin目录下生成了App和Excel文档:

小结:

Office 2013的发布凸显了云、社交的重要性,微软正在加紧整合自身旗下的资源,与谷歌、苹果抗衡。

由于Office 2013平台刚刚发布,其他深入主题后续篇章再做讨论。

VSTO学习笔记(十五)Office 2013 初体验的更多相关文章

  1. VSTO学习笔记(五)批量编辑Excel 2010 x64

    原文:VSTO学习笔记(五)批量编辑Excel 2010 x64 近期因为工作的需要,经常要批量处理大量的Excel文件,如果纯手工一个个修改,非常的麻烦,于是写了这么一个帮助类,希望能对你有所帮助. ...

  2. VSTO学习笔记(三) 开发Office 2010 64位COM加载项

    原文:VSTO学习笔记(三) 开发Office 2010 64位COM加载项 一.加载项简介 Office提供了多种用于扩展Office应用程序功能的模式,常见的有: 1.Office 自动化程序(A ...

  3. python3.4学习笔记(十五) 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)

    python3.4学习笔记(十五) 字符串操作(string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分割等) python print 不换行(在后面加上,end=''),prin ...

  4. (转载)西门子PLC学习笔记十五-(数据块及数据访问方式)

    一.数据块 数据块是在S7 CPU的存储器中定义的,用户可以定义多了数据块,但是CPU对数据块数量及数据总量是有限制的. 数据块与临时数据不同,当逻辑块执行结束或数据块关闭,数据块中的数据是会保留住的 ...

  5. (C/C++学习笔记) 十五. 构造数据类型

    十五. 构造数据类型 ● 构造数据类型概念 Structured data types 构造数据类型 结构体(structure), 联合体/共用体 (union), 枚举类型(enumeration ...

  6. MySQL学习笔记十五:优化(2)

    一.数据库性能评测关键指标 1.IOPS:每秒处理的IO请求次数,这跟磁盘硬件相关,DBA不能左右,但推荐使用SSD. 2.QPS:每秒查询次数,可以使用show status或mysqladmin ...

  7. Java基础学习笔记十五 集合、迭代器、泛型

    Collection 集合,集合是java中提供的一种容器,可以用来存储多个数据. 在前面的学习中,我们知道数据多了,可以使用数组存放或者使用ArrayList集合进行存放数据.那么,集合和数组既然都 ...

  8. angular学习笔记(十五)-module里的'服务'

    本篇介绍angular中的模块:module 在笔记(二)http://www.cnblogs.com/liulangmao/p/3711047.html里已经讲到过模块,这篇主要讲模块的 '服务' ...

  9. Java学习笔记十五:Java中的成员变量和局部变量

    Java中的成员变量和局部变量 一:成员变量: 成员变量在类中定义,用来描述对象将要有什么 成员变量可以被本类的方法使用,也可以被其他类的方法使用,成员变量的作用域在整个类内部都是可见的 二:局部变量 ...

随机推荐

  1. 二维码闪电登录流程详解,附demo(2/2)

    上篇文章,我们重点介绍了一下二维码登录的流程,以及每个“角色”要做的事情,下面我们重点分析TV角色所做的工作. TV主要完成二维码图片显示,以及websocket请求.下面重点说一下这两点. 1. B ...

  2. EasyUI - pagination 分页组件

    总页数是手动填写,后续进行更改……………… 效果: html代码: <!--使用标签创建--> <%--<div id="pp" class="e ...

  3. android multicast 多播(组播)问题

    有谁遇到过同样问题的可以探讨下,或者已经解决问题的,能够指导下我    获取组播锁 private  InetAddress   group; WifiManager  wm=(WifiManager ...

  4. Thymeleaf Javascript 取值

    <script th:inline="javascript"> var openid = /*[[${session.wxuser.openId}]]*/ </s ...

  5. 点击轮播图片左右button,实现轮播效果

    点击左右button.实现图片轮播效果.js代码例如以下: $(function () { var index = 1; var pPage = 1; var $v_citemss = $(" ...

  6. AVL树----java

                                                                                        AVL树----java AVL ...

  7. View实现涂鸦、撤销以及重做功能

    import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import j ...

  8. cms配置使用

    在早期完成了页面的切图之后,需要配置cms来实现小编上传数据更新页面的流程,在取得SEO的官网URL规则之后,就能开始官网在cms的基本配置了. 下面介绍cms的特点: 类别,决定内容与内容对应的路径 ...

  9. poj 2184 Cow Exhibition(背包变形)

    这道题目和抢银行那个题目有点儿像,同样涉及到包和物品的转换. 我们将奶牛的两种属性中的一种当作价值,另一种当作花费.把总的价值当作包.然后对于每一头奶牛进行一次01背包的筛选操作就行了. 需要特别注意 ...

  10. Swift - 给项目导入资源

    如果想添加资源到项目中去,只要通过鼠标左键将文件或者存有文件的文件夹直接拖到Xcode中.   当松开鼠标后会弹出如下面板: (1)勾上“Copy items if needed”就会拷贝文件进项目, ...