效果

Qt-Office-Demo

注册 dsoframer.ocx

前提:需要安装有 Microsoft Word 或者 WPS

把 dsoframer.ocx 拷贝到系统目录下,并以管理员身份注册:

32位:

copy dsoframer.ocx c:\windows\system32\dsoframer.ocx
regsvr32.exe c:\windows\system32\dsoframer.ocx

64位:

copy dsoframer.ocx c:\windows\SysWOW64\dsoframer.ocx
regsvr32.exe c:\windows\SysWOW64\dsoframer.ocx

reg

DSO-CLSID

在 QtCreator 中编写测试用例

DSO Framer Control Object

主要代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
if (ui->axWidget->isNull())
ui->axWidget->setControl("{FBCCBFE5-66FA-4ee3-9AF1-E02A59549AB9}");

ui->axWidget->setProperty("Visible", false);
// ui->axWidget->dynamicCall("Open(string)", filePath);

ui->axWidget->dynamicCall("createNew(string)", "Word.Document"); // 创建空白文档

// ui->axWidget->dynamicCall("SetCaption(string)", "ocx test"); // 设置标题
ui->axWidget->dynamicCall("SetTitlebar(bool)", false); // 隐藏标题栏
ui->axWidget->dynamicCall("SetMenuAccelerators(bool)", false); // 菜单快捷键
ui->axWidget->dynamicCall("SetMenubar(bool)", false); // 隐藏菜单栏
ui->axWidget->show();

dsoframer-source

https://github.com/hueidou/DsoFramer

dsoframer-source