A representação para obter o usuário HKEY_CURRENT_USER não funciona?

Estou tentando Representar uma conta de administrador de um Serviço LocalSystem para obter dados do registro HKEY CURRENT USER dos administradores - para representar, estou usando o código de código encontrado no seguinte site escrito por Uwe Keim:Imitador

Meu código-fonte é o seguinte:

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

Minha expectativa era de que sValue seria a partir da conta de usuário / passe (como eu estou representando), mas por incrível que pareça ainda é o sValue da conta LocalSystem onde meu serviço está rodando ...

Alguma pista sobre o que estou fazendo errado? Qualquer ajuda seria muito apreciada. Obrigado,

questionAnswers(4)

yourAnswerToTheQuestion