Win32 API 日本語リファレンス
ホームNetworking.WinSock › NAPI_PROVIDER_TYPE

NAPI_PROVIDER_TYPE

列挙型
基底型i4

メンバー 2

名前10進16進説明
ProviderType_Application10x1

名前空間プロバイダーはアプリケーションによってホストされることが想定されます。ローカル システム上では、ProviderType_Application 型の名前空間プロバイダーが同時に複数実行されている場合があります。

また、次の条件が満たされる限り、同一の名前空間プロバイダーの複数のインスタンスがローカル システム上で同時に実行されることもあります。ローカル システム上で、1 つのユーザー セッション内で同時に実行できる同一の名前空間プロバイダー アプリケーションのインスタンスは 1 つだけです。Windows ソケット インフラストラクチャは、クライアントの ID と、そのクライアントが実行されているユーザー セッションに基づいて、対象となる名前空間プロバイダーのインスタンスを選択します。あるユーザー セッションでユーザー MyUser として実行されているクライアントは、同じセッションで MyUser として実行されている同一の名前空間プロバイダーのインスタンスにのみ接続できます。

ProviderType_Service20x2名前空間プロバイダーはサービスによってホストされることが想定されます。このホスティング モデルは現在サポートされていません。

公式ドキュメント

NAPI_PROVIDER_TYPE 列挙型は、名前空間プロバイダーに想定されるホスティングの種類を指定します。

解説(Remarks)

この列挙型は Windows Vista 以降でサポートされます。

Windows Vista および Windows Server 2008 では、NAPI_PROVIDER_TYPE 列挙型は NS_EMAIL 名前空間プロバイダーにのみ適用されます。Windows Vista および Windows Server 2008 で現在サポートされるのは、ProviderType_Application 型の名前空間プロバイダーのみです。Windows Vista および Windows Server 2008 では、この値は常に ProviderType_Application に設定する必要があります。

NAPI_PROVIDER_TYPE 列挙型は、NAPI_PROVIDER_INSTALLATION_BLOB 構造体で NS_EMAIL 名前空間プロバイダーのプロバイダー型を指定するために使用されます。ProviderType_Application 型の NS_EMAIL 名前空間プロバイダーの例としては、インスタント メッセージング クライアントや電子メール クライアントが挙げられます。ProviderType_Service 型の NS_EMAIL 名前空間プロバイダーの例としては、ピア名解決プロトコル (PNRP) 名前空間プロバイダーが挙げられます。

WSCInstallNameSpaceEx 関数および WSCInstallNameSpaceEx32 関数は、NAPI_PROVIDER_INSTALLATION_BLOB 構造体を使用して NS_EMAIL 名前空間の名前空間プロバイダーをインストールするために使用されます。

WSAEnumNameSpaceProvidersEx 関数および WSCEnumNameSpaceProvidersEx32 関数は、NS_EMAIL 名前空間の名前空間プロバイダーを列挙し、プロバイダーの NAPI_PROVIDER_INSTALLATION_BLOB 構造体を取得するために使用されます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum NAPI_PROVIDER_TYPE : int {
    ProviderType_Application = 1,
    ProviderType_Service = 2
} NAPI_PROVIDER_TYPE;
public enum NAPI_PROVIDER_TYPE : int
{
    ProviderType_Application = 1,
    ProviderType_Service = 2,
}
Public Enum NAPI_PROVIDER_TYPE As Integer
    ProviderType_Application = 1
    ProviderType_Service = 2
End Enum
import enum

class NAPI_PROVIDER_TYPE(enum.IntEnum):
    ProviderType_Application = 1
    ProviderType_Service = 2
// NAPI_PROVIDER_TYPE
pub const ProviderType_Application: i32 = 1;
pub const ProviderType_Service: i32 = 2;
// NAPI_PROVIDER_TYPE
const (
	ProviderType_Application int32 = 1
	ProviderType_Service int32 = 2
)
const
  ProviderType_Application = 1;
  ProviderType_Service = 2;
// NAPI_PROVIDER_TYPE
pub const ProviderType_Application: i32 = 1;
pub const ProviderType_Service: i32 = 2;
const
  ProviderType_Application* = 1
  ProviderType_Service* = 2
enum NAPI_PROVIDER_TYPE : int {
    ProviderType_Application = 1,
    ProviderType_Service = 2,
}
#define global ProviderType_Application 0x1
#define global ProviderType_Service     0x2