VSTO学习笔记(十五)Office 2013 初体验
原文: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格式的离线版本:
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 初体验的更多相关文章
- VSTO学习笔记(五)批量编辑Excel 2010 x64
原文:VSTO学习笔记(五)批量编辑Excel 2010 x64 近期因为工作的需要,经常要批量处理大量的Excel文件,如果纯手工一个个修改,非常的麻烦,于是写了这么一个帮助类,希望能对你有所帮助. ...
- VSTO学习笔记(三) 开发Office 2010 64位COM加载项
原文:VSTO学习笔记(三) 开发Office 2010 64位COM加载项 一.加载项简介 Office提供了多种用于扩展Office应用程序功能的模式,常见的有: 1.Office 自动化程序(A ...
- python3.4学习笔记(十五) 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
python3.4学习笔记(十五) 字符串操作(string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分割等) python print 不换行(在后面加上,end=''),prin ...
- (转载)西门子PLC学习笔记十五-(数据块及数据访问方式)
一.数据块 数据块是在S7 CPU的存储器中定义的,用户可以定义多了数据块,但是CPU对数据块数量及数据总量是有限制的. 数据块与临时数据不同,当逻辑块执行结束或数据块关闭,数据块中的数据是会保留住的 ...
- (C/C++学习笔记) 十五. 构造数据类型
十五. 构造数据类型 ● 构造数据类型概念 Structured data types 构造数据类型 结构体(structure), 联合体/共用体 (union), 枚举类型(enumeration ...
- MySQL学习笔记十五:优化(2)
一.数据库性能评测关键指标 1.IOPS:每秒处理的IO请求次数,这跟磁盘硬件相关,DBA不能左右,但推荐使用SSD. 2.QPS:每秒查询次数,可以使用show status或mysqladmin ...
- Java基础学习笔记十五 集合、迭代器、泛型
Collection 集合,集合是java中提供的一种容器,可以用来存储多个数据. 在前面的学习中,我们知道数据多了,可以使用数组存放或者使用ArrayList集合进行存放数据.那么,集合和数组既然都 ...
- angular学习笔记(十五)-module里的'服务'
本篇介绍angular中的模块:module 在笔记(二)http://www.cnblogs.com/liulangmao/p/3711047.html里已经讲到过模块,这篇主要讲模块的 '服务' ...
- Java学习笔记十五:Java中的成员变量和局部变量
Java中的成员变量和局部变量 一:成员变量: 成员变量在类中定义,用来描述对象将要有什么 成员变量可以被本类的方法使用,也可以被其他类的方法使用,成员变量的作用域在整个类内部都是可见的 二:局部变量 ...
随机推荐
- if判断 和&&
function aaa(){ console.log('我是aaa'); }; aaa && aaa(); //如果aaa函数存在 就调用 aaa() //等价写法 ...
- jQuery Validation让验证变得如此easy(一)
一.官网下载jquery,和jquery validation plugin http://jqueryvalidation.org/ 二.引入文件 <script src="js/j ...
- 自己用h5写的转盘。写贴上来吧。
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- arm-linux-gcc下载与安装
在RHEL 5平台上安装配置arm-linux-gcc 2011-02-23 19:35:40| 分类: 嵌入式开发环境 | 标签: |字号大中小 订阅 . 在linux平台上安装好的基础上,开 ...
- Flex上传文件
前几天写了一篇jsp页面利用ajaxFileUpload上传文件.如今把flex上传页面也分享出来: 前台页面 <?xml version="1.0" encoding=&q ...
- 在github 网页上,删除已经建好的库
在github 上面怎么删除已经建好的库 点击你要删除的库,然后找到Setting 找到如图所示的Delete 在输入框里面输入你要删除的库的名字 最后点击按钮,就可以删掉了
- catalan 数——卡特兰数(转)
Catalan数——卡特兰数 今天阿里淘宝笔试中碰到两道组合数学题,感觉非常亲切,但是笔试中失踪推导不出来后来查了下,原来是Catalan数.悲剧啊,现在整理一下 一.Catalan数的定义令h(1) ...
- Solr集群、KI分词、项目实战
Solr是一个高性能,采用Java开发,基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展并对查询性能进行了优化,并且提供了一个完善 ...
- IT行业,需要经常锻炼,开篇从本钱开始
今天下完班,和部门兄弟一起去打了两小时乒乓球,大汗淋漓,很痛快. 败给了两个高手,感觉年龄大了些,灵活性没有以前那么好了. 想想以前读书时,在整个学校都叱诧风云,如今即败给了几个老手,唉. 看来以后要 ...
- Java中ArrayList和LinkedList差别
一般大家都知道ArrayList和LinkedList的大致差别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机訪问get和set.A ...