WSCEnableNSProvider 関数 (ws2spi.h)
WSCEnableNSProvider 関数は、特定の名前空間プロバイダーの状態を変更します。 これは、エンド ユーザーに名前空間プロバイダーの状態を変更する機能を提供することを目的としています。
構文
INT WSCEnableNSProvider(
[in] LPGUID lpProviderId,
[in] BOOL fEnable
);
パラメーター
[in] lpProviderId
名前空間プロバイダーのグローバル一意識別子 (GUID) へのポインター。
[in] fEnable
TRUE の場合、プロバイダーがアクティブな状態に設定されるブール値。 FALSE の場合、プロバイダーは無効になり、クエリ操作やサービス登録では使用できません。
戻り値
エラーが発生しない場合、 WSCEnableNSProvider 関数は NO_ERROR (ゼロ) を返します。 それ以外の場合は、関数が失敗した場合に SOCKET_ERROR を返し、 WSAGetLastError 関数を使用して適切なエラー コードを取得する必要があります。
エラー コード | 意味 |
---|---|
lpProviderId パラメーターは、ユーザー アドレス空間の有効な部分にないメモリを指します。 | |
指定された名前空間プロバイダー識別子が無効です。 | |
失敗しないシステム呼び出しが失敗しました。 | |
メモリが不足していました。 このエラーは、新しいカタログ エントリを割り当てるメモリが不足している場合に返されます。 |
注釈
WSCEnableNSProvider 関数は、名前空間プロバイダーの状態を変更するために使用することを目的としています。 独立系ソフトウェア ベンダー (ISV) は、通常、独自の ISV 名前空間プロバイダーをアクティブ化するために、別の ISV 名前空間プロバイダーのライセンス認証を解除しないでください。 選択はユーザーに任されている必要があります。
WSCEnableNSProvider 関数は、既に実行されているアプリケーションには影響しません。 新しくインストールされた名前空間プロバイダーは、アプリケーションには表示されず、名前空間プロバイダーのアクティブ化状態の変更も表示されません。 WSCEnableNSProvider の呼び出し後に起動されたアプリケーションには、変更が表示されます。
WSCEnableNSProvider 関数は、Administrators グループのメンバーとしてログオンしているユーザーのみが呼び出すことができます。 Administrators グループのメンバーではないユーザーが WSCEnableNSProvider を呼び出すと、関数呼び出しは失敗します。
Windows Vista または Windows Server 2008 を実行しているコンピューターの場合、ユーザー アカウント制御 (UAC) が原因でこの関数が失敗する可能性もあります。 この関数を含むアプリケーションが、組み込みの Administrator 以外の Administrators グループのメンバーとしてログオンしているユーザーによって実行された場合、 requestedExecutionLevel が requireAdministrator に設定されたマニフェスト ファイルでアプリケーションがマークされていない限り、この呼び出しは失敗します。 Windows Vista または Windows Server 2008 上のアプリケーションにこのマニフェスト ファイルがない場合、組み込みの Administrator 以外の Administrators グループのメンバーとしてログオンしたユーザーは、この関数を成功させるために、拡張シェルで組み込みの Administrator (RunAs 管理者) としてアプリケーションを実行する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | ws2spi.h |
Library | Ws2_32.lib |
[DLL] | Ws2_32.dll |