1

我的机器上安装了一个 ActiveX 控件,可以通过以下方式从 PowerPoint 添加:开发人员->控件->更多控件->“我的控件”。 通过 PowerPoint GUI 添加 ActiveX 控件

我希望用户能够通过功能区上的自定义按钮添加 ActiveX。
我成功地向我的自定义功能区 (VSTO) 添加了一个按钮。但我找不到让这个按钮将“我的控件”添加到幻灯片的方法。我还通过调用成功添加了 Excel 工作表:

Shapes.AddOLEObject(1, 1, 100, 100, "Excel.Sheet", "", MsoTriState.msoFalse, "", 0, "", MsoTriState.msoFalse);

但我找不到合适的方式来添加我的自定义 ActiveX。我究竟做错了什么?如何从 C# 加载此 ActiveX?

4

2 回答 2

1

经过两天的搜索,我找到了诀窍:
问题是您需要一个识别 ActiveX 控件的特定字符串。我所做的是:

  1. 打开 Word 并在开发人员功能区上记录鼠标单击的宏(此选项在 powerpoint 中不存在)
  2. 添加您的控件(控件->更多控件->“我的控件”)
  3. 停止录制宏。
  4. 查看创建的宏的 VBA(单击编辑宏)您可以找到类似“myControlLib.myControlctrl.1”的字符串

这是 Shapes.AddOLEObject(...) 所需的字符串作为类名。

于 2013-07-31T07:36:02.437 回答
0

Microsoft 有一个名为 OLE/COM 对象查看器的实用程序。您可以使用它来查找 ProgID(用于在 PowerPoint 中添加 ActiveX 控件的字符串)以及您想了解的有关控件的几乎所有其他信息。看一下:

http://msdn.microsoft.com/en-us/library/d0kh9f4c.aspx

于 2014-12-05T05:05:28.630 回答