跳至正文

vsto文件用什么运行,vsto环境安装包是什么软件

制作word插件的方法中VSTO算是简单的么

制作word插件的方法中VSTO算是简单的么

其实VSTO插件的部署无非就是Prerequisites和grant full trust (因为注册表是模板帮我们处理好的,我们不需要去关心,下文有详述)。上面的两篇文章为了一步到位的解决好以上两个问题,并打包.msi文件,用了一些技术。一,给Setup项目添加prerequisites,并且使用launch condition来要求用户在安装setup.exe前必须保证所有的prerequisites都已经安装在目标机器上;二,利用Custom Action在安装过程完成后,调用caspol工具来设置程序集的权限。

第一篇文章讲解了各个技术点,第二篇文章通过具体的例子来完成两种类型项目的部署,并且提供了一个Sample,里面包含了要用到一些工程,如SetSecurity。例子就是引用这个工程做为Custom Action来设置权限的。

与上两者不同的是,本文抛开所有这些技术不看,仅仅打包一个最最简单的.msi文件,把prerequisites和grant trust的事情,留待插件安装完再去人工做。希望如此,能给在VSTO项目部署时遇到困难的人一个直观的印象,让大家看到VSTO项目要运行,其实就是这么几个东西。然后回头再看Microsoft提供的这两篇文章,幸许又会有另外的收获。

一.概述

如果你的VSTO SE插件在开发机器上工作良好,一旦装到客户机上,就不再装载了。可能的原因无非就是一下几种:(在此排除了软禁用,硬禁用的情况)

1.一些prerequisites没有装:

a. .NET Framework (这是所有.NET应用程序运行的必备,没有什么好说的。如果我们用VSTO SE开发的插件,我们应该在客户机上装上.NET 2.0以上的版本)

b. Office PIAs(这是连接.NET和Office COM的桥梁,CLR通过它来操作Office的COM对象,没有它,你的程序一样不能跑)

c. VSTO Runtime(这是所有用VSTO开发出来的软件,运行时必备的,目前有三个主本版,第三个版本用来支持ClickOnce部署,本文中不涉及。本文只用到第二个主版本的升级版)

2. 注册表,任何一个VSTO SE插件程序要运行,都是Office启动的时候先从注册表中找到插件的相关信息,主要是LoadBehavior和Manifest的地址,然后根据Manifest的地址,找到manifest文件,manifest文件中记录了dll的地址和一些配置信息 (manifest文件可以用notepad打开) ,根据manifest来装载程序集。我们用VSTO SE新建一个插件项目的时候,Microsoft提供给我们的模板会帮我们自动添加一个Setup项目。这个项目中已经默认地帮我们把要写入的注册表键值写好,无须我们多费心思。当然如果你把默认的Setup项目删掉了 (我经常这么干,因为看着碍眼,并且我一般只要Debug,不要Deploy),自己再添加一个新的Setup项目,这时候,新项目中,系统不会帮你写好注册表的键值。关于注册表,下面是默认Setup项目的注册表视图的截图:

3. 权限的设置问题,Office装载任何VSTO SE开发出来的.NET插件时,都需要这个插件被完全信任。有两种方法完成这个任务:

a. 用Microsoft .NET Framework Wizard (图形化界面)

b. 用Caspol.exe (命令行,本文采用这种方式,原因是好表述,不要图)

二.部署案例

下面我们动手,用VSTO SE创建一个Excel 2007的插件(2003也是一样的,只不过客户机要装Excel 2003和Excel 2003 PIA,还有不要在同一台机器上同时安装Office 2003和2007),并且将它部署到一个客户机上。(由于手头只有英文版VS,菜单名都是英文的,大家自己对应看看吧)

1. 打开Visual Studio 2005,新建项目,在左边的导航板块中,选中C#->Office->2007 Add-ins,在右边选中Excel Add-in。取名ExcelAddIn,点OK。

然后系统会在solution中默认的创建两个项目,一个是插件项目,一个是Setup项目,如图:

2. 在ThisAddIn.cs文件中的ThisAddIn_Startup函数里加一句代码,以供回头测试是否部署成功。修改后的代码如下:

private void ThisAddIn_Startup(object sender, System.EventArgs e)

{

#region VSTO generated code

this.Application = (Excel.Application)Microsoft.Office.Tools.Excel.ExcelLocale1033Proxy.Wrap(typeof(Excel.Application),this.Application);

#endregion

MessageBox.Show(“Deploy successfully”);

}

3. 在Solution Expolrer里面,右击ExcelAddInSetup项目,点击Build。

4. 到Setup项目文件夹中的debug目录下找到ExcelAddInSetup.msi文件,拷贝到目标机器上。

5. 在目标机器上,安装:

.Net Framework 2.0

Office 2007 PIAs: (运行完下载文件后,还要点击得到的o2007PIA.msi才是安装PIAs)

VSTO Runtime2.0:

还有目标机上要有对应的Office程序,比如这里就需要Excel 2007!

6. 双击刚刚拷贝到目标机器上的ExcelAddInSetup.msi,选择安装目录并安装,假设安装到了C:/Test目录下。安装完,该目录下会出现两个文件:ExcelAddIn.dll,ExcelAddIn.dll.manifest,其中的.dll文件就是我们下面要设置权限的程序集

7. 回到桌面,点击开始->运行,输入cmd,在命令行提示下,输入cd C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727,回车

然后输入下面命令:

Caspol –u –ag All_Code –url “C:/Test/ExcelAddIn.dll” FullTrust –n “Test”

回车

输入yes

回车 (请勿直接拷贝这段命令行,因为Word好像改变了字体,大家还是自己敲一下,顺带加深一下印象)

8. 打开Excel,MessageBox对话框跳出。

vsto 如何安装在office 2007 的系统上

vsto 如何安装在office 2007 的系统上

VSTO支持的OFFICE2003以上的版本,还需要有SP1以上的补丁 ,并且VS2005也要安装VSTO的运行时库,VS2005的TEAM版安装后就会有VSTO运行时,其他版本要到微软网站下载 提示要安装office 2003 sp1,你需要去下补丁了.

Visual Studio Tools for Office是什么,干什么用的,能卸载吗?

Visual Studio Tools for Office是什么,干什么用的,能卸载吗?

Visual Studio Tools for Office 可以帮助您利用 Microsoft .NET Framework 2.0 版 中的生产率提高功能,使用 Visual Basic 和 Visual C# 来扩展 Microsoft Office 2003 和 2007 Microsoft Office system 中的应用程序。工具中包含新的 Visual Studio 项目,可帮助您开始创建 Microsoft Office 解决方案。

Visual Studio Tools for Office(VSTO)技术可以使用.NET Framework定制和扩展Microsoft Office应用程序和文档,它包含的工具还可以使这个定制在Visual Studio中更容易完成,例如用于Office ribbon控件的可视化设计器。

VSTO是微软公司发布的一系列产品中的最新产品,可以定制Office应用程序。用于访问Office应用程序的对象模型已经随时间逐步演化了。如果读者过去曾使用过它,就会熟悉它的某些部分。如果读者以前为Office应用程序编写过VBA插件,就为本章讨论的技术做好了准备(VSTO可以与VBA交互操作)。但VSTO通过Office Primary Interop Assemblies(PIAs)提供的、与Office交互的类已经扩展到Office对象模型之外。例如,VSTO类包括.NET数据绑定功能。

在Visual Studio 2008推出之前,VSTO一直是一个独立下载的软件包,如果要开发Office解决方案,就可以得到它。在Visual Studio 2008中,VSTO集成到Visual Studio IDE中。VSTO的这个版本也称为VSTO 3,包含了对Office 2007的全部支持,还包括许多新特性,例如可以与Word内容控件交互,前面提及的ribbon可视化设计器、VBA集成等。

本章不需要VSTO或其以前版本的任何预备知识。

内容如下:

● 可以用VSTO创建的项目类型,在这些项目中可以包含的功能

● 应用于所有VSTO解决方案类型的基础技术

● 如何建立带定制UI、VBA交互操作功能和ClickOnce部署功能的VSTO解决方案

40.1 VSTO概述 VSTO包含如下组件:

● 一组项目模板,可用于创建各种类型的Office解决方案

● 设计器,支持ribbons、动作面板和定制任务面板的可视化布局

● 建立在Office Primary Interop Assemblies(PIAs)基础之上的类,它们还提供了扩展功能

VSTO支持Office 2003和2007版。VSTO类库有两种形式,各用于这两种Office版本,它们分别使用不同系列的程序集。由于它们比较简单(且功能集很丰富),所以本章主要介绍2007版。

按照我的看法,反正现在电脑的空间都很大,这个程序本身占空间很小,再加上微软的office程序衔接精密,也不能确切的知道什么时候能用到。就先留着吧。

怎样使用VSTO刷新Excel表格数据

应该是不行的,你这些vsto或者vba进行操作的时候,其实就是后台对EXCEL文件本身进行了修改。 而撤销这个操作实际是建立在用户操作上的。

也就是说,原生的撤销功能,实际是从EXCEL打开开始监视用户的输入以及EXCEL的输出,

记录下每一步操作(如果你显示隐藏文件的话,在.XLSX文件旁边,会看到有一个临时文件的生成),当你Ctrl+Z的时候,就回滚上一步的操作。

但是使用VBA或者VSTO的时候,由于是代码在执行,所以EXCEL是不记录每一步的操作内容的,

如果仍需要这个功能,可以把撤销功能也重写一下,

思路很简单,监视每一步用户的输入(原生撤销)

并记录你VSTO按键的操作功能,逆向运行,

这样就可以将你代码执行的操作进行还原了。

vs2010 打包的vsto安装包如何静默安装

请耐心的看

点击下载 vs 2010

注意:本站提供的VS2010旗舰版已经破解,不需要输入密匙,直接安装即可使用。

1.文件下载过来之后是ISO文件,我们直接解压即可。解压完成之后打开,找到“setup.exe”,双击运行。

2.选择第一个,如果需要静默安装:执行安装包程序时加上/quiet或/passive参数。

例:setup.exe /passive 。

3.开始Microsoft visual studio 2010旗舰版的安装,点击下一步。

4.选择我接受,然后点击下一步。

5.这里提示我们不能更改安装目录,可能是因为已经破解的原因,影响不大,直接点击下一步。

6.接着进行漫长的安装过程,具体安装时间与机器配置有关。

7.安装完成,点击完成按钮。

8.打开开始菜单,找到“Microsoft visual studio 2010”双击打开。有些朋友在打开时可能会遇见“visual studio 2010 service pack 1”需要升级的问题,不用担心,直接按照提示下载升级即可。

9.第一次启动“visual studio 2010 旗舰版”会让你选择默认环境设置。这里不用管它,随便选一个,以后还可以更改的。然后点击启动visual studio。

10.启动成功。

vs2010发布的vsto安装包安装后,程序所指的路径是安装包中的vsto路径,删除安装包后程序为什么还能用

%ProgramFiles%\Common Files\Microsoft Shared\VSTO\10.0\VSTOInstaller.exe /Uninstall file:///E:/文档编辑器安装包/Setup1/LMWordEditor.vsto

如何在vs2013用vsto开发office 2010的插件

用2015的版本比较好用一些 点击下载 visual studio 20151、下载后得到ios文件,直接解压缩或用虚拟光驱加载运行,以管理员身份运行“vs_ultimate.exe”开始正式安装2、提示用的电脑要安装ie10,不然有些功能将无法使用,这个有用户自行选择是否要安装3、选择程序的安装路径,这里呢提醒下为了便于用户以后的卸载,最好安装到一个常用的文件夹内.安装类型建议默认即可4、安装开始5、安装完成

怎么用vs2010实现对word和excel的操作

之前都是用VBA来开发Office解决方案的,后来微软开发出了VSTO这个工具包来创建自定义的Office应用程序,使得开发Office应用程序更加简单,并且用VSTO来开发office应用程序可以使用Visual studio开发环境中的众多功能和CLR提供的内存管理,垃圾回收等功能。

Office应用程序如Word,Excel和Outlook都是用非托管代码来写的, 而我们创建的VSTO工程使用的是托管代码,这时候就需要使用互操作程序集来与Office应用程序里的非托管COM对象交互,然后主互操作程序集(PIA)指的是官方发布的互操作程序集,如果电脑中安装了PIA,当你添加对类库的引用时,那么Visual Studio会自动加载PIA,微软为Office应用程序提供了PIA,如EXcel PIA就是Microsof.Office.Interop.Excel.dll,其他应用程序也类似。当安装了Office产品后,PIA会自动安装在电脑的GAC目录里,每当创建一个VSTO解决方案, Visual Studio会自动为该解决方案加载合适的Office PIA引用和其他程序集

宿主项是表示Office对象模型入口点的类。应用程序外接程序使用Microsoft.Office.Tools.AddIn类为宿主项,此宿主项提供对宿主应用程序和成员的对象模型的访问,可以通过宿主项添加数据绑定的能力和提供额外的事件来扩展本地Office文…之前都是用VBA来开发Office解决方案的,后来微软开发出了VSTO这个工具包来创建自定义的Office应用程序,使得开发Office应用程序更加简单,并且用VSTO来开发office应用程序可以使用Visual studio开发环境中的众多功能和CLR提供的内存管理,垃圾回收等功能。

Office应用程序如Word,Excel和Outlook都是用非托管代码来写的, 而我们创建的VSTO工程使用的是托管代码,这时候就需要使用互操作程序集来与Office应用程序里的非托管COM对象交互,然后主互操作程序集(PIA)指的是官方发布的互操作程序集,如果电脑中安装了PIA,当你添加对类库的引用时,那么Visual Studio会自动加载PIA,微软为Office应用程序提供了PIA,如EXcel PIA就是Microsof.Office.Interop.Excel.dll,其他应用程序也类似。当安装了Office产品后,PIA会自动安装在电脑的GAC目录里,每当创建一个VSTO解决方案, Visual Studio会自动为该解决方案加载合适的Office PIA引用和其他程序集

宿主项是表示Office对象模型入口点的类。应用程序外接程序使用Microsoft.Office.Tools.AddIn类为宿主项,此宿主项提供对宿主应用程序和成员的对象模型的访问,可以通过宿主项添加数据绑定的能力和提供额外的事件来扩展本地Office文档。而创建一个Excel解决方案会创建4个Excel宿主项:Workbook,Sheet1,Sheet2和Sheet3.

vsto开发的excel加载宏是否必须要求客户端也安装了vsto?还是只用客户端装有.net framework即可?

对方不需要安装VSTO

vsto excel如何提高运行速度

常用方法:1)关闭屏幕刷新2)尽量使用内置工作表函数3)使用with语句引用对象,以减少对象被引用的次数4)简化代码,去除不必要的语句 汗,看错了,看成vba了……