Excel开发学习笔记:发布VSTO下的Excel开发项目
遇到一个数据处理自动化的问题,于是打算开发一个基于excel的小工具。在业余时间一边自学一边实践,抽空把一些知识写下来以备今后参考,因为走的是盲人摸象的野路子,幼稚与错误请多包涵。
开发环境基于VSTO,具体配置:visual studio 2010,VB .Net,excel 2007,文档级别的定制程序。
因为是自用的小工具,对部署的要求很低,有个安装文件即可,也不要求兼容老版本的office。这样最简单的就是使用vs2010的publish功能,但实际操作仍然不是一帆风顺。因为发布的内容除了自己的代码,还涉及一系列部署依赖项。可以通过右键点击项目工程-->properties-->publish-->prerequisites查看与设置当前项目的依赖项。对于我的工程来说有3个:
- .NET framework 4 Client profile
- vs 2010 tools for office runtime
- windows installer 3.1
这些依赖项的默认安装方式是通过web安装,不适合我的部署要求(隔离的局域网),所以在这个界面修改为和本地程序一起发布。然后右键项目工程 -->publish,进入发布向导界面,一路向前,默认情况会在工程文件目录下生成一个publish目录,里面包含以下内容:
- application files目录:里面是自己代码的发布文件
- DotNetFX40Client目录:里面是.net依赖文件
- VSTOR40目录:里面是vsto依赖文件
- windowsInstaller3_1目录:安装依赖文件
- xxxx.vsto文件:安装配置
- xxxx.xlsx文件:程序文件,我这里是文档级的定制程序
- setup.exe文件:安装文件
安装的时候把整个publish目录拷贝到目标机器,然后双击setup,会自动先安装依赖项,然后再安装我们的程序。之后可以通过控制面板中的卸载程序完成卸载。
对于比较新的操作系统来说这些就足够了,比如windows 2008 server sp2,但我的环境中还有windows 2003 server 64bit的机器,这时会安装失败,这个环境问题搞了我很长时间,google了好久才在stackoverflow找到一个帖子,结论是需要事先安装 Windows Imaging Component (WIC,可以去微软下载相应的版本)。我开发机器上以前就下载有这个文件,安装搞定。
Excel开发学习笔记:发布VSTO下的Excel开发项目的更多相关文章
- 驱动开发学习笔记. 0.06 嵌入式linux视频开发之预备知识
驱动开发读书笔记. 0.06 嵌入式linux视频开发之预备知识 由于毕业设计选择了嵌入式linux视频开发相关的项目,于是找了相关的资料,下面是一下预备知识 UVC : UVC,全称为:USB v ...
- Android开发学习之路--MAC下Android Studio开发环境搭建
自从毕业开始到现在还没有系统地学习android应用的开发,之前一直都是做些底层的驱动,以及linux上的c开发.虽然写过几个简单的app,也对android4.0.3的源代码做过部分的分析,也算入门 ...
- 【Android学习笔记】Mac下Android Studio开发环境搭建
本文由@ray 出品,转载请注明出处. 文章链接:http://www.cnblogs.com/wolfray/p/7829069.html 对于移动端这块,笔者之前一直都是进行iOS开发的,也从来 ...
- cocos2d-x 3.x游戏开发学习笔记(1)--mac下配置cocos2d-x 3.x开发环境
打开用户文件夹下.bash_profile文件,配置环境 vim ~/.bash_profile //按键i,进行插入编辑(假设输错d进行删除一行) 环境配置过程例如以下: 1.首先配置下androi ...
- spss C# 二次开发 学习笔记(三)——Spss .Net 开发
Spss .Net 二次开发的学习过程暂停了一段时间,今天开始重启. 之前脑残的不得了,本想从网上下载一个Spss的安装包,然后安装学习.于是百度搜索Spss,在百度搜索框的列表中看到Spss17.S ...
- 步步为营 SharePoint 开发学习笔记系列总结
转:http://www.cnblogs.com/springyangwc/archive/2011/08/03/2126763.html 概要 为时20多天的sharepoint开发学习笔记系列终于 ...
- VSTO学习笔记(十四)Excel数据透视表与PowerPivot
原文:VSTO学习笔记(十四)Excel数据透视表与PowerPivot 近期公司内部在做一种通用查询报表,方便人力资源分析.统计数据.由于之前公司系统中有一个类似的查询使用Excel数据透视表完成的 ...
- VSTO 学习笔记(六)在 Excel 2010中使用RDLC报表
原文:VSTO 学习笔记(六)在 Excel 2010中使用RDLC报表 Excel具有强大的图表显示.分析功能,这点毋庸置疑,但是如果将常规MIS系统中的数据以报表的形式在Excel中显示,却并不那 ...
- Rest API 开发 学习笔记(转)
Rest API 开发 学习笔记 概述 REST 从资源的角度来观察整个网络,分布在各处的资源由URI确定,而客户端的应用通过URI来获取资源的表示方式.获得这些表徵致使这些应用程序转变了其状态.随着 ...
随机推荐
- 怎样在WIN7系统下安装IIS和配置ASP
一:Windows7系统 (IIS是WIN7自带的,版本7.0),首先是安装IIS.打开控制面板,找到“程序与功能”,点进去,点击左侧“打开或关闭Windows功能”,找到“Internet 信息服务 ...
- hive学习6
将查询结果集写入另一个表中的时候报了这个错,Dynamic partition strict mode requires at least one static partition column. T ...
- @ResponseBody注解返回中文乱码
第一种方法: @RequestMapping(value = "testPersonalValidtor",produces = "application/json;ch ...
- 美化tp5.1跳转提示
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- jsp:jstl标签之控制流程
下面将要讲的用于流程控制的标签,其中包括:if.choose.when 与 otherwise 等.接下来对这些标签逐一讲解. 这个标签的作用和 Java 程序中的 if 语句作用相同,用于判断条件语 ...
- java:IO:file 类
刷某一目录下的所有文件夹/文件 public class FileDemo2 { public static void main(String args[]) { File file = new Fi ...
- Incorrect string value: '\xE7\x8E\x8B\xE4\xBD\xB3' for column 'contact' at row 1
1 queries executed, 0 success, 1 errors, 0 warnings 查询:INSERT INTO beijing(contact,tel_phone,qq,comp ...
- uva489(需要考虑周全)
这个题是简单题,但是我的思路本身不周全,忽略了一种比较“无理”的情况,而导致WA多次.我是把猜的串全扫一遍以后判断出结果,但是实际上可能是前面已经全猜对了,但是这个选手是个逗比,已经猜对了还要猜,而且 ...
- http请求 详解
- memcached使用libevent 和 多线程模式
一.libevent的使用 首先我们知道,memcached是使用了iblievet作为网络框架的,而iblievet又是单线程模型的基于linux下epoll事件的异步模型.因此,其基本的思想就是 ...