NetMessageNameEnum 関数 (lmmsg.h)

[この関数は、メッセンジャー サービスがサポートされていないため、Windows Vista の時点ではサポートされていません。]

NetMessageNameEnum 関数は、指定したコンピューターでメッセージを受信するメッセージエイリアスを一覧表示します。 関数では、Messenger サービスを開始する必要があります。

構文

NET_API_STATUS NET_API_FUNCTION NetMessageNameEnum(
  [in]      LPCWSTR servername,
  [in]      DWORD   level,
  [out]     LPBYTE  *bufptr,
  [in]      DWORD   prefmaxlen,
  [out]     LPDWORD entriesread,
  [out]     LPDWORD totalentries,
  [in, out] LPDWORD resume_handle
);

パラメーター

[in] servername

関数を実行するリモート サーバーの DNS または NetBIOS 名を指定する定数文字列へのポインター。 このパラメーターが NULL の場合は、ローカル コンピューターが使用されます。

[in] level

データの情報レベルを指定します。 このパラメーターには、次の値のいずれかを指定できます。

説明
0
メッセージエイリアスを返します。 bufptr パラメーターは、MSG_INFO_0構造体の配列を指します。
1
メッセージエイリアスを返します。 bufptr パラメーターは、MSG_INFO_1構造体の配列を指します。 このレベルは互換性のためにのみ存在します。 メッセージ転送はサポートされていません。

[out] bufptr

データを受信するバッファーへのポインター。 このデータの形式は、 level パラメーターの値によって異なります。 このバッファーはシステムによって割り当てられ、 NetApiBufferFree 関数を使用して解放する必要があります。 関数が ERROR_MORE_DATA で失敗した場合でも、バッファーを解放する必要があることに注意してください。

[in] prefmaxlen

返されるデータの推奨される最大長をバイト単位で指定します。 MAX_PREFERRED_LENGTHを指定した場合、関数はデータに必要なメモリ量を割り当てます。 このパラメーターに別の値を指定すると、関数から返されるバイト数を制限できます。 バッファー サイズが不十分で、すべてのエントリを保持できる場合、関数は ERROR_MORE_DATAを返します。 詳細については、「 ネットワーク管理機能バッファー 」および「 ネットワーク管理機能バッファーの長さ」を参照してください。

[out] entriesread

実際に列挙された要素の数を受け取る値へのポインター。

[out] totalentries

現在の再開位置から列挙された可能性があるエントリの合計数を受け取る値へのポインター。 アプリケーションでは、この値のみをヒントとして考慮する必要があることに注意してください。

[in, out] resume_handle

既存のメッセージ エイリアス検索を続行するために使用される再開ハンドルを含む値へのポインター。 最初の呼び出しではハンドルを 0 にし、後続の呼び出しでは変更せずに残す必要があります。 resume_handleNULL の場合、再開ハンドルは格納されません。

戻り値

関数が成功した場合、戻り値はNERR_Success。

関数が失敗した場合、戻り値には次のいずれかのエラー コードを指定できます。

リターン コード 説明
ERROR_ACCESS_DENIED
呼び出し元には、操作を完了するための適切なアクセス権がありません。
ERROR_INVALID_LEVEL
level パラメーターに指定された値が無効です。
ERROR_INVALID_PARAMETER
パラメーターが正しくありません。
ERROR_MORE_DATA
その他のエントリを使用できます。 すべてのエントリを受信するのに十分な大きさのバッファーを指定します。
ERROR_NOT_ENOUGH_MEMORY
メモリ不足です。
ERROR_NOT_SUPPORTED
この要求はサポートされていません。 このエラーは、Windows Vista 以降で返されます。
NERR_BufTooSmall
指定されたバッファーが小さすぎます。

解説

Administrators ローカル グループのメンバーのみが、リモート サーバーで NetMessageNameEnum 関数を正常に実行できます。

メッセージ名テーブル内の特定のメッセージ エイリアスに関する情報を取得するには、 NetMessageNameGetInfo 関数を呼び出します。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー lmmsg.h (include Lm.h)
Library Netapi32.lib
[DLL] Netapi32.dll

関連項目

MSG_INFO_0

MSG_INFO_1

メッセージ関数

NetMessageNameGetInfo

ネットワーク管理機能

ネットワーク管理の概要