配置组件服务
Java中使用jacob调用WPS的COM组件的时候,手动启动可以,但是开机自启却不行
DCOM组件
运行
mmc -32打开控制台。点击
文件->添加/删除管理单元,在可用的管理单元中选择组件服务,然后点击添加,确定。展开
组件服务节点直到看到DCOM 配置。找到
WPS文字 文档, 右键属性。切换到
位置选项卡,勾选在数据所在计算机上运行应用程序与在此计算机上运行应用程序。切换到
安全选项卡, 在启动和激活程序功能与访问权限选择自定义,并编辑权限。添加所需的账户, 一般情况下, IIS 部署的 Web 应用需要 IIS Users 以及 NetWork Service, 而 Windows 服务则需要其登录身份的账户权限。 这里我一般选择 Everyone , 然后勾选本地启动,远程启动,本地激活,远程激活,还有就是远程访问。毕竟在程序中, 我们一般都是使用 RPC 的方式进行访问。
上述步骤设置完毕之后, 切换到
标识选项卡,勾选下列用户, 最好填写管理员账号密码 。点击应用。打开
C:\Windows\System32\config\systemprofile目录,如果没有Desktop目录则新建。打开
C:\Windows\SysWOW64\config\systemprofile目录,如果没有Desktop目录则新建。
Windows服务
- 如果是
Windows服务, 运行services.msc打开服务面板, 找到对应服务,右键属性。 - 切换到
登录选项卡,登录身份选择本地系统账户并且勾选允许服务于桌面交互。
Java调用COM
工具类开头的宏说明
构件ActiveX组件实例
1 | ActiveXComponent ax = new ActiveXComponent("name"); |
其中的 name 的值和你需要调用的ActiveX控件有关
每个 Dispatch 对象看成是对 ActiveX 控件的一个操作,这一步是获得该 ActiveX 控件的控制权
9.0之后的版本接口名称
| MS控件名 | name |
|---|---|
| WPS文字 | KWPS.Aplication |
| WPS的Excel | KET.Application |
| WPS的演示文档 | KWPP.Application |
| Word | Word.Application |
| Excel | Excel.Application |
| Powerpoint | Powerpoint.Application |
Python示例
https://www.psvmc.cn/article/2021-11-15-python-doc-convert.html