次の方法で共有


RegConnectRegistryW 関数 (winreg.h)

別のコンピューター上の定義済みのレジストリ キーへの接続を確立します。

構文

LSTATUS RegConnectRegistryW(
  [in, optional] LPCWSTR lpMachineName,
  [in]           HKEY    hKey,
  [out]          PHKEY   phkResult
);

パラメーター

[in, optional] lpMachineName

リモート コンピューターの名前です。 文字列の形式は次のとおりです。

\\Computername

呼び出し元はリモート コンピューターにアクセスできる必要があります。または、関数が失敗します。

このパラメーターが NULL の場合は、ローカル コンピューター名が使用されます。

[in] hKey

定義済みのレジストリ ハンドル。 このパラメーターには、リモート コンピューター上の次の 定義済みキー のいずれかを指定できます。

HKEY_LOCAL_MACHINEHKEY_PERFORMANCE_DATAHKEY_USERS

[out] phkResult

リモート コンピューター上の定義済みのハンドルを識別するキー ハンドルを受け取る変数へのポインター。

戻り値

関数が成功した場合、戻り値は ERROR_SUCCESS です。

関数が失敗した場合、戻り値は Winerror.h で定義されている 0 以外のエラー コードです。 FORMAT_MESSAGE_FROM_SYSTEM フラグを指定して FormatMessage 関数を使用すると、エラーの一般的な説明を取得できます。

解説

RegConnectRegistry では、リモート コンピューターでリモート レジストリ サービスが実行されている必要があります。 既定では、このサービスは手動で開始するように構成されています。 リモート レジストリ サービスを自動的に開始するように構成するには、Services.msc を実行し、サービスの [スタートアップの種類] を [自動] に変更します。

Windows Server 2003 および Windows XP/2000: リモート レジストリ サービスは、既定で自動的に開始するように構成されています。

RegConnectRegistry によって返されるハンドルが不要になった場合は、RegCloseKey を呼び出して閉じる必要があります。

コンピューターがワークグループに参加していて、"ローカル アカウントを使用してネットワーク ログオンを強制してゲストとして認証する" ポリシーが有効になっている場合、関数は失敗します。 コンピューターがワークグループに参加している場合、このポリシーは既定で有効になります。

現在のユーザーがリモート コンピューターに適切にアクセスできない場合、 RegConnectRegistry の呼び出しは失敗します。 リモート レジストリに接続するには、RegConnectRegistry を呼び出す前に、LOGON32_LOGON_NEW_CREDENTIALSと ImpersonateLoggedOnUser を使用して LogonUser を呼び出します。

Windows 2000: 考えられる回避策の 1 つは、別の資格情報セットを使用して、IPC$ などの管理共有へのセッションを確立することです。 現在のユーザー以外の資格情報を指定するには、 WNetAddConnection2 関数を使用して共有に接続します。 レジストリへのアクセスが完了したら、接続をキャンセルします。

Windows XP Home Edition: この関数を使用して、Windows XP Home Edition を実行しているリモート コンピューターに接続することはできません。 この関数は、認証レイヤーをバイパスするため、Windows XP Home Edition を実行している場合でも、ローカル コンピューターの名前で動作します。

注意

winreg.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして RegConnectRegistry を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

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

関連項目

RegCloseKey

レジストリ関数

レジストリの概要