0

我有一个在 VS2010 中创建的 vb.net windows 窗体应用程序,它运行良好。我想通过我正在写入另一个应用程序的插件访问该应用程序。但是,当我使用:

odt = CreateObject("ODTuner.Application")

或者

odt = GetObject(, "ODTuner.Application")

我收到一条错误消息“无法创建 ActiveX 组件”。这在访问商业应用程序时工作正常,但不适用于我的自定义应用程序。起初我以为这意味着我的应用程序没有注册,所以我使用 regasm 注册了它,但这并没有解决问题。我确信这是一件简单的事情,我只是错过了一些东西。我已经寻找答案但没有找到解决方案 - 也许我没有寻找正确的东西?我会很感激任何帮助,我已经坚持了一段时间。

只是一些附加信息:我正在编写的是商业应用程序(ModelCenter)的插件。我希望该插件执行我的自定义应用程序,但我收到“无法创建 ActiveX 组件”错误。如果有另一种方法可以让它执行我的应用程序,那就太好了,但这是我知道的唯一方法。

更新:这里有更多关于我所在位置的详细信息:

我为我的班级的声明添加了一些属性。代码如下所示:

<ComVisibleAttribute(True), _
Guid("4D0CF269-DD2F-4D09-93E8-1975FC253C9E"), _
ProgId("ODTuner.Application"), _
ClassInterface(ClassInterfaceType.None)> _
Public Class ODTuner 'frm_ODTuner

据我了解,这应该通过 ProgId“ODTuner.Application”使其 COM 可见。然后在我的插件中,我有:

Dim odt
odt = CreateObject("ODTuner.Application")

但是,我收到错误“无法创建 ActiveX 组件”我在一个简单的 Windows 窗体应用程序中尝试了代码(一个按钮来执行 CreateObject),看看它是否与插件或模型中心有关,但我得到了那里有同样的错误。

我已经搜索和搜索,但无法弄清楚为什么这不起作用。显然我错过了一些东西。感谢任何帮助。

谢谢

4

0 回答 0