IRTC::连接 方法

连接方法使用指定的 NIC 将 NPP 连接到网络,并为连接提供配置信息。

语法

HRESULT STDMETHODCALLTYPE Connect(
  [in]  HBLOB  hInputBlob,
  [in]  LPVOID StatusCallbackProc,
  [in]  LPVOID FramesCallbackProc,
  [in]  LPVOID UserContext,
  [out] HBLOB  hErrorBlob
);

参数

hInputBlob [in]

指向 BLOB 的句柄,该 BLOB 指定要连接到的 NIC 以及该连接的配置信息。

StatusCallbackProc [in]

用于接收状态更新(如触发器)的用户状态回调函数的地址。 此参数可以设置为 NULL

FramesCallbackProc [in]

用于接收状态更新(如触发器)的用户帧回调函数的地址。 此参数可以设置为 NULL

UserContext [in]

调用用户状态和帧回调函数时传递的值。 如果同时指定了两个回调函数,则必须使用相同的用户上下文值。 此参数的值通常是 HWND 或“this”指针。

hErrorBlob [out]

处理包含其他错误信息的错误 BLOB。 有关错误 BLOB 中的内容的信息,请参阅本主题底部的备注。

返回值

如果此方法成功,则返回值NMERR_SUCCESS。

如果该方法失败,则返回值是以下错误代码之一 (包括内部 IRTC::Configure call) 返回的错误:

返回代码 说明
NMERR_ALREADY_CONNECTED
NPP COM 对象的此实例已连接到网络。
NMERR_BLOB_CONVERSION_ERROR
配置 BLOB 已损坏。 此错误由 IRTC::Configure 调用生成。
NMERR_BLOB_ENTRY_DOES_NOT_EXIST
hInputBlob 参数指定的输入 BLOB 缺少执行此操作所需的条目。 此错误可能是由 IRTC::连接IRTC::Configure 调用生成的。 查看 hErrorBlob 返回的错误 BLOB 以确定找不到哪个条目。
NMERR_BLOB_NOT_INITIALIZED
尚未调用 CreateBlob 函数。 此错误由 IRTC::Configure 调用生成。
NMERR_BLOB_STRING_INVALID
字符串不是以 null 结尾的。 此错误由 IRTC::Configure 调用生成。
NMERR_ILLEGAL_TRIGGER
输入 BLOB 的触发器部分已损坏。 此错误由 IRTC::Configure 调用生成。
NMERR_INVALID_BLOB
hInputBlob 中指定的对象不是 BLOB。 此错误由 IRTC::Configure 调用生成。
NMERR_OUT_OF_MEMORY
执行此操作所需的内存不可用。 此错误由 IRTC::Configure 调用生成。
NMERR_TIMEOUT
请求已超时。 此错误由 IRTC::Configure 调用生成。
NMERR_UPLEVEL_BLOB
hInputBlob 中指定的 BLOB 版本号不正确。 此错误由 IRTC::Configure 调用生成。

注解

调用连接方法时,NPP 使用 hInputBlob 提供的 BLOB 自动调用 IRTC::Configure 方法。 请注意,调用 IRTC::Configure 返回的任何错误代码将传回 IRTC::连接调用返回。

必须先调用此方法,然后才能开始捕获帧。 请注意,使用此方法连接到网络时,必须继续使用 IRTC 接口捕获帧。

调用此函数时,必须指定状态或帧回调函数,即使它仅充当占位符也是如此。

可以通过调用 GetNPPBlobUI、GetNPPBlobTableSelectNPPBlobFromTable 方法获取 hInputBlob 指定的输入 BLOB。

hErrorBlob 中返回的错误 BLOB 包含开发人员或应用程序可用于故障排除的错误信息。 hErrorBlob 返回的错误 BLOB 包含网络监视器无法理解或找不到在 hInputBlob 中指定的输入 BLOB 中的条目。 例如,如果返回NMERR_BLOB_ENTRY_DOES_NOT_EXIST,则返回的错误 BLOB 中包括找不到的网络监视器条目。

有关以下方面的信息 请参阅
获取表示 NIC 的输入 BLOB 选择网络接口卡

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Netmon.h
DLL
Ndisnpp.dll;
Rmtnpp.dll

另请参阅

IRTC

IRTC::Configure

IRTC::D isconnect

IRTC::"开始"菜单