次の方法で共有


IDelaydC::Connect メソッド

Connect メソッドは、指定したネットワーク インターフェイス カードを使用して NPP をネットワークに接続し、接続に関する構成情報を提供します。

構文

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

パラメーター

hInputBlob [in]

接続している NIC とその接続に関する構成情報を指定する BLOB を処理します。

StatusCallbackProc [in]

トリガーなどの状態の更新を受信するために使用される、ユーザーのコールバック関数のアドレス。 コールバック関数を使用しない場合は、このパラメーターと UserContext パラメーターを NULL に設定 します

UserContext [in]

ユーザーのコールバック関数が呼び出されたときに渡される値。 このパラメーターの値は、通常、HWND または 'this' ポインターのいずれかです。 コールバック関数が指定されていない場合は、このパラメーターと StatusCallbackProc パラメーターを NULL に設定 します

hErrorBlob [out]

追加のエラー情報を含むエラー BLOB を処理します。

戻り値

このメソッドが成功した場合、戻り値はNMERR_SUCCESS。

メソッドが失敗した場合、戻り値は次のいずれかのエラー コードになります (内部 IDelaydC::Configure 呼び出しによって返されるエラーが含まれます)。

リターン コード 説明
NMERR_ALREADY_CONNECTED
NPP COM オブジェクトのこのインスタンスは、既にネットワークに接続されています。
NMERR_BLOB_CONVERSION_ERROR
構成 BLOB が破損しています。 このエラーは、 IDelaydC::Configure 呼び出しによって生成されます。
NMERR_BLOB_ENTRY_DOES_NOT_EXIST
hInputBlob で指定された入力 BLOB に、この操作を実行するために必要なエントリがありません。 このエラーは、 IDelaydC::Connect または IDelaydC::Configure 呼び出しによって生成される可能性があります。 hErrorBlob によって返されたエラー BLOB を調べて、見つからなかったエントリを確認します。
NMERR_BLOB_NOT_INITIALIZED
CreateBlob 関数が呼び出されていません。 このエラーは、 IDelaydC::Configure 呼び出しによって生成されます。
NMERR_BLOB_STRING_INVALID
文字列は null で終わるものではありません。 このエラーは、 IDelaydC::Configure 呼び出しによって生成されます。
NMERR_ILLEGAL_TRIGGER
入力 BLOB のトリガー部分が破損しています。 このエラーは、 IDelaydC::Configure 呼び出しによって生成されます。
NMERR_INVALID_BLOB
hInputBlob で指定されたオブジェクトは BLOB ではありません。 このエラーは、 IDelaydC::Configure 呼び出しによって生成されます。
NMERR_NO_DEFAULT_CAPTURE_DIRECTORY
既定のキャプチャ ディレクトリがレジストリに設定されていません。 キャプチャ ディレクトリを設定するには、次のパスを使用します。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\nm\Parameters\CapturePath
NMERR_OUT_OF_MEMORY
この操作を実行するために使用できるメモリがありませんでした。 このエラーは、 IDelaydC::Configure 呼び出しによって生成されます。
NMERR_TIMEOUT
要求がタイムアウトしました。このエラーは、 IDelaydC::Configure 呼び出しによって生成されます。
NMERR_UPLEVEL_BLOB
hInputBlob で指定された BLOB のバージョン番号が正しくありません。 このエラーは、 IDelaydC::Configure 呼び出しによって生成されます。

解説

Connect メソッドが呼び出されると、NPP は hInputBlob によって提供される BLOB を使用して IDelaydC::Configure を自動的に呼び出します。 IDelaydC::Configure の呼び出しによって返されたエラー コードは、IDelaydC::Connect 呼び出しによって返されることに注意してください。

フレームのキャプチャを開始する前に、このメソッドを呼び出す必要があります。 この方法を使用してネットワークに接続する場合は、引き続き IDelaydC インターフェイス メソッドを使用してフレームをキャプチャする必要があることに注意してください。

hInputBlob パラメーターで指定された入力 BLOB は、GetNPPBlobFromUIGetNPPBlobTableSelectNPPBlobFromTable を呼び出すことで取得できます。

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

関連項目

IDelaydC

IDelaydC::Configure

IDelaydC::D isconnect

IDelaydC::Start