文档章节

基于DsoFramer开发MSWord的ocx方式的总结

yagerfgcs
 yagerfgcs
发布于 2016/06/26 18:17
字数 268
阅读 22
收藏 0
点赞 0
评论 0

一、Dsoframer的已有问题

1. 增加接口函数ActivateWithoutFocus,激活word, 但是不抢占焦点;

在dsofauto.cpp中增加接口函数ActivateWithoutFocus

 

在dsofcontrol.cpp增加函数UIActivateWithoutFocus(BOOL fForceUIActive)

 

 

2. dsofdocobj.cpp 修改IPActivateView函数

 增加activateme操作,这样当commandbar发生改变后能够及时更新


3. dsofdocobj.cpp 修改OnNotifyAppActivate函数

 一定要先设置OnFrameWindowActivate为FALSE,否则会出现在打开两个都包含word ocx的exe时,第二次加载文件后,右击菜单无法弹出的问题


4. dsofcontrol.cpp 修改函数OnAppActivationChange

 在打开弹出式IE窗口时,会出现m_fComponentActive值不准确,导致无法编辑word,需要手动激活


5. dsofcontrol.cpp修改函数ControlWindowProc

 必须加,在鼠标点击是激活控件,因为在xp上会莫名其妙收到deactive的消息,在需要鼠标点击时主动激活


6.增加接口函数UpdateView, 在增加了自定义工具栏按钮后,需要调用,否则自定义的工具栏按钮不能刷新


二、开发心得


© 著作权归作者所有

共有 人打赏支持
yagerfgcs
粉丝 4
博文 34
码字总数 13476
作品 0
南京
技术主管
基于DsoFramer开发MSWord的ocx方式的总结

一、Dsoframer的已有问题 1. 增加接口函数ActivateWithoutFocus,激活word, 但是不抢占焦点; 在dsofauto.cpp中增加接口函数ActivateWithoutFocus 在dsofcontrol.cpp增加函数UIActivateWitho...

筱骏 ⋅ 2016/04/22 ⋅ 0

Dsoframer实现文档在线浏览功能

Dsoframer实现文档在线浏览的原理相对简单,相当于将office的桌面窗口嵌入了浏览器。但是微软发布的这个ActiveX插件很久不更新了,网上提供的下载大多是国内大牛改写的,版本不一。下面说下具...

Bingo许 ⋅ 2014/01/03 ⋅ 0

有人了解dsoframer.ocx指教一下

有人了解dsoframer.ocx指教一下,这东西好用吗?从哪里可以下到?

fhp0917 ⋅ 2013/05/15 ⋅ 1

C# 在线Word插件,求助!!!

C#.net 项目中用到在线word文档编辑器插件,目前用的是dsoframer.ocx,遇到很多问题,比如word版本不兼容等,现在想换个兼容性比较好的,易于操作的插件! 恳求赐教!!...

Huntero ⋅ 2013/06/13 ⋅ 4

dsoframer无法打开含有三个以上Sheet的Excel文件...急用、求救

小弟需要使用dsoframer.ocx控件进行Excel操作,使用该控件的open(string path)可以打开Excel文件,但是我所要打开的Excel文件中包含的sheet在三个或者三个以上,如果Excel中只有三个或者三个...

↘殘膤ゾ ⋅ 2012/12/03 ⋅ 0

实现仿百度文库在线浏览功能

针对office文档的在线浏览功能,解决方案有以下几种,其中各有优劣之处。此次只对解决思路做个说明,具体实现会在后面的博文中做说明。 方案一:使用微软的dsoframer.ocx,该插件不在此详细介...

Bingo许 ⋅ 2014/01/02 ⋅ 4

OCX在IE10上能正常加载,在IE8上出现崩溃解决思路

OCX在IE10上能正常加载,在IE8上出现崩溃解决思路 如果对你有用请给个赞 背景 最初开发的时候是在ie8上开发的,但是在中途开发出现了ie8崩溃,因项目紧就用ie10开发了。 分析过程 1:单页版的...

布道牛 ⋅ 2016/03/01 ⋅ 0

浏览器插件研究

很早就想开发浏览器插件,像谷歌浏览器插件太丰富,但要熟悉javesript,go语言。 一般的Web应用对于浏览器插件能不使用的建议尽量不使用,因为其涉及到安全问题以及影响用户安装(或自动下载注...

crossmix ⋅ 2015/09/25 ⋅ 0

【ocx疑难杂症0】浅谈OCX开发注册“逐用户重定向”问题

最近按公司要求封装一个OCX,本来很简单的一件事却遇到一个很奇怪的问题。 在编译器vs2010编译后注册报“逐用户重定向” 当时在莫度的带领下差点全军覆灭,提到2点解决方案(狗比膏药--坑的一...

忘记江南 ⋅ 05/18 ⋅ 0

Tosobright/MATP

MATP 1.《SplashScreen》MATP的引导是以VB6.0进行编写,VB6.0开发的引导界面,主要是小巧,可以快速启动 2.《LVMain》LabVIEW为测试主体语言,LVMain中的MyLib为个人积累的库文件,界面可缩放...

Tosobright ⋅ 2017/01/14 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

解决CentOS6、7,/etc/sysconfig/下没有iptables的问题

一、Centos 6版本解决办法: 1.任意运行一条iptables防火墙规则配置命令: iptables -P OUTPUT ACCEPT 2.对iptables服务进行保存: service iptables save 3.重启iptables服务: service ...

寰宇01 ⋅ 23分钟前 ⋅ 2

数据库备份和恢复

备份:mysqldump -u root -p 数据库>磁盘路径 恢复:mysql -u root -p 数据库<sql脚本的磁盘路径

anlve ⋅ 今天 ⋅ 0

发生了什么?Linus 又发怒了?

在一个 Linux 内核 4.18-rc1 的 Pull Request 中,开发者 Andy Shevchenko 表示其在对设备属性框架进行更新时,移除了 union 别名,这引发了 Linus 的暴怒。 这一次 Linus Torvalds 发怒的原...

问题终结者 ⋅ 今天 ⋅ 0

在树莓派上搭建一个maven仓库

在树莓派上搭建一个maven仓库 20180618 lambo init 项目说明 家里有台树莓派性能太慢。想搭建一个maven私服, 使用nexus或者 jfrog-artifactory 运行的够呛。怎么办呢,手写一个吧.所在这个...

林小宝 ⋅ 今天 ⋅ 0

Spring发展历程总结

转自与 https://www.cnblogs.com/RunForLove/p/4641672.html 目前很多公司的架构,从Struts2迁移到了SpringMVC。你有想过为什么不使用Servlet+JSP来构建Java web项目,而是采用SpringMVC呢?...

onedotdot ⋅ 今天 ⋅ 0

Python模块/包/库安装(6种方法)

Python模块/包/库安装(6种方法) 冰颖机器人 2016-11-29 21:33:26 一、方法1: 单文件模块 直接把文件拷贝到 $python_dir/Lib 二、方法2: 多文件模块,带setup.py 下载模块包(压缩文件zip...

cswangyx ⋅ 今天 ⋅ 0

零基础学习大数据人工智能,学习路线篇!系统规划大数据之路?

大数据处理技术怎么学习呢?首先我们要学习Python语言和Linux操作系统,这两个是学习大数据的基础,学习的顺序不分前后。 Python:Python 的排名从去年开始就借助人工智能持续上升,现在它已经...

董黎明 ⋅ 今天 ⋅ 0

openJdk和sun jdk的区别

使用过LINUX的人都应该知道,在大多数LINUX发行版本里,内置或者通过软件源安装JDK的话,都是安装的OpenJDK, 那么到底什么是OpenJDK,它与SUN JDK有什么关系和区别呢? 历史上的原因是,Ope...

jason_kiss ⋅ 今天 ⋅ 0

梳理

Redux 是 JavaScript 状态容器,提供可预测化的状态管理。 它是JS的状态容器,是一种解决问题的方式,所以即可以用于 react 也可以用于 vue。 需要理解其思想及实现方式。 应用中所有的 stat...

分秒 ⋅ 今天 ⋅ 0

Java 后台判断是否为ajax请求

/** * 是否是Ajax请求 * @param request * @return */public static boolean isAjax(ServletRequest request){return "XMLHttpRequest".equalsIgnoreCase(((HttpServletReques......

JavaSon712 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部