我是 Visual Basic 的新手,我遇到了一个错误。我正在尝试编写一个最终将由 Sterling Trader(股票交易软件)运行并在其中运行的程序。我正在尝试按照 activeX API 指南的说明来包含对库的引用。以下是指南所说的:
创建对 Sterling ActiveX 库的引用 - 从菜单中选择项目 ---> 引用.... - 从可用引用中选择 Sterling 1.0 类型库。- 如果未找到 Sterling 1.0 类型库,请选择浏览并找到 Sterling.tlb 文件。
启用事件 - 将以下行置于代码的常规部分以声明对象:复制代码
Dim WithEvents m_STIEvents 作为 STIEvents
- 将以下行置于初始化过程中,例如 Form_Load 过程:复制代码
设置 m_STIEvents = 新 STIEvents
- 现在在代码窗口的 Object 下拉控件中选择 m_STIEvents(左上角下拉控件)。您将在“过程”下拉控件(右上角的下拉控件)中看到可用的事件。选择您想要捕获的事件,它将被插入到您的代码中。它应该看起来像这样:复制代码
Private Sub m_STIEvents_OnSTIOrderUpdateMsg(ByVal oSTIOrderUpdateMsg As ISTIOrderUpdateMsg)
- 使用 oSTIOrderUpdateMsg 对象从消息中收集信息。
但是,由于某种原因,我在 Visual Basic 2010 中遇到了错误(该指南必须是过时的)。所以基本上,我盲目地跟随 Intellisense 将我的代码更改为我希望能工作的东西。这是我的代码:
折叠 | 复制代码
Public Class Form1
Dim WithEvents m_STIEvents As SterlingLib.STIEvents
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
m_STIEvents = New SterlingLib.STIEvents
End Sub
End Class
现在,我只是尝试启动并运行一个已成功包含该库的基本程序。但是,当我运行它时,我收到以下错误消息:
“由于以下错误,检索具有 CLSID {5E89F49B-6A12-420F-8570-E510EF1B580A} 的组件的 COM 类工厂失败:80070002 系统找不到指定的文件(来自 HRESULT 的异常:0x80070002)”
如果我单击继续,程序将运行并显示基本窗口。我在网上根本找不到任何有关如何执行此操作的信息,请帮助!
谢谢