前段时间给老师做一个试题录入、组卷的程序,需要把word嵌入到winform中,用dsoframer的时候遇到了很多问题。在这记录一下
版本选择
版本的话尽量选1.3吧,主要原因是网上的资料基本上都是基于1.3的。我之前试了一个2.3版本的,遇到了太多问题,最后还是换回了1.3
注册控件
这个其实没有什么好说的,网上都有。32位的把dsoframer.ocx文件放在c:\windows\system32\下在控制台使用regsvr32注册,64位就放在那个syswow64文件夹下然后注册
添加控件到VS中
打开一个winform界面,在工具箱中随便找一栏右键添加项,找到COM组件中的dsoframer,点击添加之后就可以把控件拖到winform中
dsoframer的几个属性
在使用dsoframer的过程中有几个属性需要注意一下,titlebar和toolsbar那些标题栏是有属性的,可以设成false隐藏,还有就是有一个dsoframer的初始状态最好设置成alwaysAlive,他默认好像是不活动的,这样你第一次打开的时候就会出现无法打开不活动的文档的提示。
dso打开word文档
这个实际上并没有那么复杂,直接使用dso实例的open方法,把路径传过去就行了,这里会有一个进程的问题,比如你word文档已经在别的地方打开的话,你再用dso去加载的话就会报错。你可以选择在打开文档之前检测一下,把word进程杀掉或者返回一个提示什么的