Acesso ao registro com C # e "BUILD x86" em uma máquina de 64 bits

Tenho um aplicativo (escrito em C #), que roda em um Windows Server 2008 (64 bits). Nesta aplicação, devo verificar algumas chaves do Registro em relação ao IIS. Entre outros, quero acessar a chaveHKEY_LOCAL_MACHINE \ Software \ Microsoft \ InetStp \ Components \ WMICompatibility " para verificar se o modo de compatibilidade do IIS 6 está ativado ou não. Para isso eu uso Registry.GetValue do Microsoft.Win32.

Por algumas razões, a solução deve ser compilada com x86. A consequência é que não é mais possível acessarHKEY_LOCAL_MACHINE \ Software \ Microsoft \ InetStp \ Components mas ainda é possível ler a chave emHKEY_LOCAL_MACHINE \ Software \ Microsoft \ InetStp. Ao compilá-lo com " AnyCPU "- sinaliza que o acesso ao registro funciona bem.

Então, qual é o motivo desse comportamento? Existe uma solução ou solução alternativa para esse problema?

questionAnswers(2)

yourAnswerToTheQuestion