[转]内嵌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");
}

时间: 2024-10-24 09:42:25

[转]内嵌WORD/OFFICE的WINFORM程序——DSOFRAMER使用小结的相关文章

swt java 内嵌ActiveX控件

这里用的是SWT/JFace开发application中SWT自带的org.eclipse.swt.ole.win32 包可以支持内嵌OLE和ActiveX. 具体用法如下: //创建一个OleFrame做为OLE(或ActiveX)的框架 OleFrame oleFrame = new OleFrame(this, SWT.NONE); //创建ActiveX的容器,其中的classID是ActiveX的classid,在注册表中可以找到 OleControlSite oleControl =

.NET Core的文件系统[4]:由EmbeddedFileProvider构建的内嵌(资源)文件系统

一个物理文件可以直接作为资源内嵌到编译生成的程序集中.借助于EmbeddedFileProvider,我们可以统一的编程方式来读取内嵌于某个程序集中的资源文件,不过在这之前我们必须知道如何将一个项目文件作为资源并嵌入到生成的程序集中. [ 本文已经同步到<ASP.NET Core框架揭秘>之中] 目录一.将项目文件变成内嵌资源二.读取资源文件三.EmbededFileProvider 一.将项目文件变成内嵌资源 在默认情况下,我们添加到一个.NET项目中的静态文件并不会成为项目编译生成的程序集

由EmbeddedFileProvider构建的内嵌(资源)文件系统

由EmbeddedFileProvider构建的内嵌(资源)文件系统 一个物理文件可以直接作为资源内嵌到编译生成的程序集中.借助于EmbeddedFileProvider,我们可以统一的编程方式来读取内嵌于某个程序集中的资源文件,不过在这之前我们必须知道如何将一个项目文件作为资源并嵌入到生成的程序集中. [ 本文已经同步到<ASP.NET Core框架揭秘>之中] 目录一.将项目文件变成内嵌资源二.读取资源文件三.EmbededFileProvider 一.将项目文件变成内嵌资源 在默认情况下

【转】WebResource实现在自定义控件中内嵌JS文件

在类库中的资源  其他项目中要使用 需要嵌入才行 参考文献:WebResource实现在自定义控件中内嵌JS文件 1. WebResource简介 ASP.NET(1.0/1.1)给我们提供了一个开发WebControl的编程模型,于是我们摆脱了asp里面的include模式的复用方式.不过1.0/1.1提供的Web控件开发模型对于处理没有image.css等外部资源的组件还算比较得心应手,script虽然很多时候也是外部资源,但在开发控件的时候我们习惯把script使用Page.Registe

WinForm中内嵌WebBroswer

本文系原创. 前两天在工作中需要在Winform的窗体中内嵌的一个浏览器,我们都知道winform其实是自带了WebBroswer控件的,但是这个控件是IE的浏览器,存在这样那样的兼容性问题,不能完全满足的需求,所以就研究了下其他的开源浏览器框架,内嵌到我们的窗体中,完成了产品需求,以下做一个记录和分享. 由于产品是要做商用的,所以必须得考虑开源性和开源协议的问题.研究了Geckofx.CefSharp这两个组件,其中Geckofx的开源许可证为MPL,CefSharp开源许可证为BSD. Ce

BEGINNING SHAREPOINT&amp;#174; 2013 DEVELOPMENT 第14章节--使用Office Services开发应用程序 WORD自己主动服务和新的PowerPoint自己主动服务

BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第14章节--使用Office Services开发应用程序  WORD自己主动服务和新的PowerPoint自己主动服务 全新的PowerPoint Automation Services被带到SP2013用来PowerPoint本地展示,Word Automation Services给SP2010中Word文档带来:将文档以server规模转化为其它格式的功能. BEGINNING SHAREPOINT® 201

panel内嵌程序窗体

function RunAppInPanel(const AppFileName: string; ParentHandle: HWND; var WinHandle: HWND): Boolean; var si: STARTUPINFO; pi: TProcessInformation; begin Result := False; // 启动进程 FillChar(si, SizeOf(si), 0); si.cb := SizeOf(si); si.wShowWindow := SW_S

关于Unity程序在IOS和Android上显示内嵌网页的方式

近期因为有须要在Unity程序执行在ios或android手机上显示内嵌网页.所以遍从网上搜集了一下相关的资料.整理例如以下: UnityWebCore 从搜索中先看到了这个.下载下来了以后发现这个的原理好像是通过调用浏览器内核.然后将网页渲染到mesh的方式完毕的. 但遗憾的是仅仅支持windows桌面版本号.但还是发出来大家假设有须要能够下载  下载地址: http://pan.baidu.com/s/1nt3FVkd unity-webview 这个是在github上找到的. 是一个kei

7.PL_SQL——在PL_SQL程序中内嵌查询语句、DML语句和事物处理语句

在PL/SQL中可以使用的SQL语句主要有以下几类: SELECT 查询语句,DML语句,Transaction 事物处理语句,本文将对这几类语句在PL/SQL中的用法逐一介绍. 一.查询语句-SELECT SELECT 语句用来查询一条或多条语句.虽然SELECT 语句也属于DML语句,但SELECT是只读的,所以单独列出. 在PL/SQL中使用SELECT 语句的格式如下:   SELECT select_list INTO {variable_name[,variable_name]...