GetOwnerModuleFromUdpEntry 関数 (iphlpapi.h)
GetOwnerModuleFromUdpEntry 関数は、MIB テーブル行の特定の IPv4 UDP エンドポイントに対してコンテキスト バインドを発行したモジュールに関するデータを取得します。
構文
IPHLPAPI_DLL_LINKAGE DWORD GetOwnerModuleFromUdpEntry(
[in] PMIB_UDPROW_OWNER_MODULE pUdpEntry,
[in] TCPIP_OWNER_MODULE_INFO_CLASS Class,
[out] PVOID pBuffer,
[in, out] PDWORD pdwSize
);
パラメーター
[in] pUdpEntry
所有者 モジュールの取得 に使用される IPv4 UDP エンドポイント エントリを含むMIB_UDPROW_OWNER_MODULE構造体へのポインター。
[in] Class
所有者モジュールに関して取得するデータの種類を示す TCPIP_OWNER_MODULE_INFO_CLASS 列挙値。
[out] pBuffer
所有者モジュール データを含む TCPIP_OWNER_MODULE_BASIC_INFO 構造体を含むバッファー。 このバッファーで返されるデータの型は、 Class パラメーターの値によって示されます。
Class が対応する値に設定されている場合、Buffer のデータには次の構造体が使用されます。
クラス 列挙値 | バッファー データ形式 |
---|---|
TCPIP_OWNER_MODULE_BASIC_INFO | TCPIP_OWNER_MODULE_BASIC_INFO |
[in, out] pdwSize
Buffer で返される構造体の推定サイズ (バイト単位)。 この値が小さすぎると、この関数によって ERROR_INSUFFICIENT_BUFFER が返され、このフィールドには正しい構造体サイズが含まれます。
戻り値
呼び出しが成功した場合は、 NO_ERROR 値が返されます。 それ以外の場合は、次のエラーが返されます。
リターン コード | 説明 |
---|---|
|
テーブルに十分な領域が割り当てられなかった。 テーブルのサイズは pdwSize パラメーターで返されます。テーブルを正常に取得するには、この関数の後続の呼び出しで使用する必要があります。 |
注釈
Buffer パラメーターには、所有者モジュールの名前とパスを含む 0 で終わる文字列へのポインターなど、特定のデータへのポインターを持つ構造体だけでなく、実際のデータ自体も含まれます。は名前とパスの文字列です。 したがって、バッファー サイズを計算するときは、構造体と構造体のメンバーが指すデータの両方に十分な領域があることを確認します。
所有者モジュールに対する UDP テーブル エントリの解決は、ベスト プラクティスです。 場合によっては、 TCPIP_OWNER_MODULE_BASIC_INFO 構造体で返される所有者モジュール名には、"svchost.exe" などのプロセス名、"RPC" などのサービス名、または "timer.dll" などのコンポーネント名を指定できます。
Windows Vista 以降で実行されているコンピューターの場合、TCPIP_OWNER_MODULE_BASIC_INFO構造の pModuleName メンバーと pModulePath メンバーへのアクセスは、ユーザー アカウント制御 (UAC) によって制限されます。 この関数を呼び出すアプリケーションが、組み込みの Administrator 以外の Administrators グループのメンバーとしてログオンしているユーザーによって実行された場合、この呼び出しは成功しますが、 requestedExecutionLevel が requireAdministrator に設定されたマニフェスト ファイルでアプリケーションがマークされていない限り、これらのメンバーへのアクセスは空の文字列を返します。 Windows Vista 以降のアプリケーションにこのマニフェスト ファイルがない場合、組み込みの管理者以外の Administrators グループのメンバーとしてログオンしているユーザーは、保護された pModuleName および pModulePath メンバーへのアクセスを許可するために、組み込みの Administrator (RunAs 管理者) として拡張シェルでアプリケーションを実行する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista、SP2 を使用した Windows XP [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008、Windows Server 2003 SP1 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | iphlpapi.h |
Library | Iphlpapi.lib |
[DLL] | Iphlpapi.dll |