[转]内嵌WORD/OFFICE的WINFORM程序——DSOFRAMER使用小结
最近一直想用VC#2005做个内嵌WORD/OFFICE的WINFORM程序,目前主要有以下解决途径:
1、直接通过API把WORD/OFFICE的窗口句柄给放到WINFORM中(感觉较为复杂);
2、通过WEB BROWSER;
3、利用DSOFRAMER。
本人都测试了一下,觉得DSOFRAMER更符合自己的愿望,故决定使用DSOFRAMER来实现。
操作步骤:
WinForm
1、从微软网站下载DsoFramer_KB311765_x86.exe,解开将得到dsoframer.ocx;
2、把dsoframer.ocx拷贝到系统目录下,并注册,我是写了一个reg.bat来实现: copy dsoframer.ocx c:\windows\system32\dsoframer.ocx regsvr32.exe c:\windows\system32\dsoframer.ocx
3、启动VS2005,新创建一个WINFORM的C#程序;
4、在设计工具栏中,新添加选项,在弹出的页面中选择“TAB”页,然后浏览,选择c:\windows\system32\dsoframer.ocx进行添加,此时设计工具栏中将看到这个工具,名字为“DSO FRAMER CONTROL OBJECT”;
5、拖动此工具到某设计FORM窗口中,此时将在代码文件中添加了以下行: private AxDSOFramer.AxFramerControl axFramerControl1;
6、打开文件,this.axFramerControl1.Open(_filePath);//注:_filePath为.doc或者.xls为后缀的文件;
7、此时就可以直接在打开的WORD/EXCEL上进行编辑保存等等操作了。 注:在操作过程中,发现按打印预览按钮后关闭,会引起WORD/EXCEL报错,找了好久,后来直接安装OFFICE2003 SP3,哈哈,fix the bug,不会报错了。
本文来自http://www.cnblogs.com/tianfu/archive/2009/05/07/1452047.html
Web
1.将dsoframer.ocx复制到c:\windows\system32\
2.双击运行regocx.bat文件 在vs2010中使用dsoframer控件:
1.在工具箱中添加项,在COM 选项卡中选择已注册的dsoframer控件。
2.将公共控件中的DSO Framer控件拖到表单上。
3.在DSO中打开Office文件代码: this.axFramerControl1.Open("c:\\test.xls");
4.将Office文件保存的代码:
private void button1_Click(object sender, EventArgs e)
{ this.axFramerControl1.Open("C:\\Documents and Settings\\Administrator\\桌面\\复件 新建 Microsoft Word 文档.doc"); }
private void button2_Click(object sender, EventArgs e)
{ this.axFramerControl1.Save("C:\\Documents and Settings\\Administrator\\桌面\\111111111 文档.doc", true, "myname", "mypass"); }
[转]内嵌WORD/OFFICE的WINFORM程序——DSOFRAMER使用小结的更多相关文章
- 微信小程序内嵌网页能力开放 小程序支持内嵌网页文档说明
为了方便开发者灵活配置微信小程序,张小龙现在开放了小程序的内嵌网页功能,这是一个非常大的惊喜啊,以后意味着你只要开放一个手机端网站,就可以制作一个小程序了哦.操作方法1.开发者登录微信小程序后台,选择 ...
- Webform——内嵌word编辑器
word编辑器,类似于Word的. 首先需要添加两个引用: 然后把一个文件夹仍在根目录下: 继而在工具箱里 选择项→浏览找到这两个引用,直接把工具拽进来就行: 获取编辑器文本: protected v ...
- 微信小程序内嵌网页 网站生成小程序
1. 进入小程序后台 - 设置 - 开发设置 2. 添加业务域名(小程序只支持https) 3. 小程序代码 <web-view src="网址"></web-v ...
- app内嵌h5分享到小程序分享功能
if (this.GLOBAL.env !== 'production') { try { window.JSBridge.shareMiniProgramToWx('https://www.lexi ...
- swt java 内嵌ActiveX控件
这里用的是SWT/JFace开发application中SWT自带的org.eclipse.swt.ole.win32 包可以支持内嵌OLE和ActiveX. 具体用法如下: //创建一个OleFra ...
- .NET Core的文件系统[4]:由EmbeddedFileProvider构建的内嵌(资源)文件系统
一个物理文件可以直接作为资源内嵌到编译生成的程序集中.借助于EmbeddedFileProvider,我们可以统一的编程方式来读取内嵌于某个程序集中的资源文件,不过在这之前我们必须知道如何将一个项目文 ...
- 由EmbeddedFileProvider构建的内嵌(资源)文件系统
由EmbeddedFileProvider构建的内嵌(资源)文件系统 一个物理文件可以直接作为资源内嵌到编译生成的程序集中.借助于EmbeddedFileProvider,我们可以统一的编程方式来读取 ...
- 【转】WebResource实现在自定义控件中内嵌JS文件
在类库中的资源 其他项目中要使用 需要嵌入才行 参考文献:WebResource实现在自定义控件中内嵌JS文件 1. WebResource简介 ASP.NET(1.0/1.1)给我们提供了一个开发 ...
- Winform/WPF中内嵌BeetleX的HTTP服务
在新版本的BeetleX.FastHttpApi加入了对netstandard2.0支持,如果程序基于.NetFramework4.6.1来构建WinForm或WPF桌面程序的情况下可以直接把Beet ...
随机推荐
- 【剑指Offer学习】【面试题55:字符流中第一个不反复的字符】
题目:请实现一个函数用来找出字符流中第一个仅仅出现一次的字符. 举例说明 比如,当从字符流中仅仅读出前两个字符"go"时.第一个仅仅出现一次的字符是'g'.当从该字符流中读出前六个 ...
- Java,javascript,html,css的关系
内容:,就是制作者放在页面想让访问者浏览的内容 . 主要由java语言提供数据检索.更新.业务处理等. 结构:使内容更加具有逻辑性和易用性,类似于1,2级标题,正文.列表等等. HTML 表现:用于修 ...
- HDU 4259 - Double Dealing(求循环节)
首先将扑克牌进行一次置换,然后分解出所有的循环节,所有循环节的扑克牌个数的最小公倍数即为答案 #include <stdio.h> #include <string.h> #i ...
- Helpers\Data
Helpers\Data Data helper contains a bunch of useful methods for looking at and altering your data. D ...
- FastDFS为什么要结合Nginx
FastDFS为什么要结合Nginx? 我们在使用FastDFS部署一个分布式文件系统的时候,通过FastDFS的客户端API来进行文件的上传.下载.删除等操作.同时通过FastDFS的HTTP服务器 ...
- C语言——结构体
struct 是一种把一些数据项组合在一起的数据结构.在Go,Rust这些新语言中都保留了结构体 struct 的概念,这是C的精华. 定义匿名结构体 例:学生信息定义为一个结构体,信息内容包括学生的 ...
- VSPackge插件系列:如何正确获取DTE
做VS插件开发,不得不了解DTE,有了DTE我们就可以与VS交互了,比如说获取当前选择的文件,比如说获取当前主窗口,比如说获取编译器等等,关于DTE接口更多的说明我把接口地址贴出来方便大家查阅. ht ...
- mysql datetime 排序
在项目里面,使用mysql datetime desc,看见别人使用UNIX_TIMESTAMP(datetime) desc,就用了 datetime进行比较,使用UNIX_TIMESTAMP()进 ...
- 移动平台3G手机网站前端开发布局技巧
本文转载至:移动平台3G手机网站前端开发布局技巧汇总 - 前端开发-武方博 您或许正在或准备参与一个WepApp项目,您或许正在Google搜索mobile development相 关的文章,您或许 ...
- RabbitMQ 原文译1.2--"Hello Word"
本系列文章均来自官网原文,属于个人翻译,如有雷同,权当个人归档,忽喷. .NET/C# RabbitMQ 客户端下载地址:https://github.com/rabbitmq/rabbitmq-do ...