¿La suplantación para obtener el usuario HKEY_CURRENT_USER no funciona?

Estoy intentando suplantar una cuenta de administrador de un servicio de LocalSystem para obtener datos de los administradores. Registro actual del USUARIO HKEY: para personificar estoy utilizando el código de proyecto que se encuentra en el siguiente sitio escrito por Uwe Keim:Imitador

Mi código fuente es el siguiente:

using (new Impersonator("user", ".", "pass"))
{
    RegistryKey rk = Registry.CurrentUser.OpenSubKey("Software\\CompanyName");
    string sValue = rk.GetValue("Value", "").ToString();
    rk2.Close();
}

Mi expectativa era que sValue sería de la cuenta de usuario / pase (ya que me estoy haciendo pasar por ella) pero, por extraño que parezca, sigue siendo el sValue de la cuenta LocalSystem donde se ejecuta mi servicio ...

¿Alguna pista sobre lo que estoy haciendo mal? Cualquier ayuda sería muy apreciada. Gracias,

Respuestas a la pregunta(4)

Su respuesta a la pregunta