NPOpenEnum 関数 (npapi.h)

ネットワーク リソースまたは既存の接続の列挙を開きます。 列挙体の有効なハンドルを取得するには、 NPOpenEnum 関数を呼び出す必要があります。

構文

DWORD NPOpenEnum(
  [in]  DWORD          dwScope,
  [in]  DWORD          dwType,
  [in]  DWORD          dwUsage,
  [in]  LPNETRESOURCEW lpNetResource,
  [out] LPHANDLE       lphEnum
);

パラメーター

[in] dwScope

列挙のスコープを決定します。 これは、次のいずれかになります。

価値 Meaning
RESOURCE_CONNECTED
現在接続されているすべてのリソース。
RESOURCE_GLOBALNET
ネットワーク上のすべてのリソース。
RESOURCE_CONTEXT
ユーザーの現在および既定のネットワーク コンテキストに関連付けられているリソース ("ネットワーク近隣" ビューに使用)。 この解釈はプロバイダーに任されます。

[in] dwType

対象となるリソースの種類を指定します。 これはビットマスクであり、次のフラグを任意に組み合わせて使用できます。

価値 Meaning
RESOURCETYPE_DISK
すべてのディスク リソース。
RESOURCETYPE_PRINT
すべての印刷リソース。
RESOURCEUSAGE_ATTACHED
呼び出し元が認証されていない場合 (ネットワークで認証なしの列挙が許可されている場合でも) 関数が失敗することを指定します。
 

dwType が 0 の場合、または単にRESOURCEUSAGE_ATTACHEDの場合は、すべての種類のリソースが返されます。 プロバイダーに、印刷リソースとディスク リソースを同じレベルで区別する機能がない場合は、すべてのリソースが返される可能性があります。

[in] dwUsage

関心のあるリソースの使用を指定します。 これはビットマスクであり、次のフラグを任意に組み合わせて使用できます。

価値 Meaning
RESOURCEUSAGE_CONNECTABLE
すべての接続可能なリソース
RESOURCEUSAGE_CONTAINER
すべてのコンテナー リソース
 

ビットマスクは、すべてのフラグに一致する 0 にすることができます。 dwScope が RESOURCE_GLOBALNET に設定されていない場合、このパラメーターは無視される可能性があります。

[in] lpNetResource

列挙を実行するコンテナーへのポインター。 NETRESOURCE は、前の NPEnumResource 呼び出しを通じて取得されたか、呼び出し元によって構築されたか、NULL にすることができます。 NULL の場合、または NETRESOURCE の lpRemoteName フィールドが NULL の場合、プロバイダーはネットワークの最上位レベルを列挙する必要があります。 これは、プロバイダーがネットワーク リソースを表すために NULL の lpRemoteName を使用できないことに注意してください。 通常、呼び出し元は、このパラメーターを NULL に設定して NPOpenEnum を呼び出し、返された結果を使用して列挙を開始します。 呼び出し元のプログラムが列挙元のプロバイダーとリモート パスを正確に認識している場合は、lpProvider フィールドと lpRemoteName フィールドを入力して、渡す独自の NETRESOURCE 構造体を構築できます。 dwScope がRESOURCE_CONNECTEDまたはRESOURCE_CONTEXTの場合、このパラメーターは NULL になります。

[out] lphEnum

NPEnumResource 関数で使用できるハンドルへのポインター。 ハンドルの使用が完了したら、 NPCloseEnum 関数を呼び出してハンドルを解放します。

戻り値

関数が成功すると、WN_SUCCESSが返されます。 それ以外の場合は、次のいずれかを含むエラー コードを返す必要があります。

リターン コード Description
WN_NOT_SUPPORTED
プロバイダーは、要求されている列挙型の種類をサポートしていないか、特定のネットワーク リソースを参照できません。
WN_NOT_CONTAINER
lpNetResource はコンテナーを指していません。
WN_BAD_VALUE
無効な dwScope、dwUsage、dwType、またはパラメーターの不適切な組み合わせが指定されています。
WN_NO_NETWORK
ネットワークが存在しません。

Requirements

Requirement 価値
サポートされる最小クライアント Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
Header npapi.h
Library davclnt.lib