NPOpenEnum 関数 (npapi.h)

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

構文

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

パラメーター

[in] dwScope

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

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

[in] dwType

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

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

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

[in] dwUsage

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

意味
RESOURCEUSAGE_CONNECTABLE
すべての接続可能なリソース
RESOURCEUSAGE_CONTAINER
すべてのコンテナー リソース
 

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

[in] lpNetResource

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

[out] lphEnum

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

戻り値

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

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

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー npapi.h