RegLoadKey (advapi32)
Last changed: -67.210.65.5

.
Summary
Load a registry "hive" file into the registry

C# Signature:

[DllImport("advapi32.dll", SetLastError=true)]
static extern Int32 RegLoadKey(UInt32 hKey, String lpSubKey, String lpFile);

VB Signature:

Private Declare Auto Function RegLoadKey Lib "advapi32.dll" ( _
   ByVal hKey As IntPtr, _
   ByVal lpSubKey As String, _
   ByVal lpFile As String _
) As Integer

User-Defined Types:

None.

Alternative Managed API:

Do you know one? Please contribute it!

Notes:

When run from a remote PC (via RegConnectRegistry), the path to the hive file is local to that PC.

LONG RegLoadKey(
   HKEY hKey,
   LPCTSTR lpSubKey,
   LPCTSTR lpFile
);

Tips & Tricks:

The following C# enum is useful for the hKey parameter:

public enum HKEY : uint
{
    LOCAL_MACHINE   = 0x80000002,
    USERS       = 0x80000003
}

Sample Code:

  Public Shared Sub LoadKey(ByVal key As RegistryKey, ByVal MountPoint As String, ByVal HivePath As String)
    Dim ret As Integer
    ret = RegLoadKey(key.hKey, MountPoint, HivePath)
    If ret <> 0 Then
      Throw New Win32Exception(ret)
    End If
  End Sub

Documentation
RegLoadKey on MSDN

See also:

RegSaveKey to save registry key to file

RegRestoreKey to restore registry key from a file

RegUnloadKey