Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

180
Vistas
Acceda a la sección de registro privada de Visual Studio 2017

Visual Studio usa una sección de registro privada en lugar de "contaminar" el registro del sistema, que normalmente se encuentra en algún lugar como este:

C:\Users\Abx\AppData\Local\Microsoft\VisualStudio\15.0_4b0ba1c0\privateregistry.bin

[Para determinar las extensiones instaladas, debemos mirar la siguiente clave: Software\Microsoft\VisualStudio\15.0_4b0ba1c0\ExtensionManager\EnabledExtensions ]

¿Cuál es la forma más sencilla de cargar y acceder a este archivo por clave en C#?

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Para revisar manualmente, puede usar la aplicación regedit.exe para cargar el archivo privateregistry.bin haciendo lo siguiente:

  1. Inicie RegEdit.exe
  2. Seleccione el nodo Computer\HKEY_LOCAL_MACHINE en el panel de la izquierda
  3. Seleccione el archivo | Cargue el elemento de menú Hive... y cargue el archivo privateregistry.bin
  4. Cuando se le solicite un nombre de clave, simplemente escriba algo como "VSRegHive"
  5. Esto cargará los datos en un VSRegHive bajo el nodo HKLM
  6. Cuando termine de explorar, asegúrese de seleccionar VSRegHive y seleccione Archivo | Descargue Hive... , antes de salir de la utilidad RegEdit.exe; de lo contrario, VS no podrá iniciarse. Mantener la colmena cargada en regedit crea algún tipo de bloqueo que evita que DevEnv.exe se inicie.

Acceder mediante programación a la clave RegLoadAppKey es, de hecho, su mejor apuesta.

about 4 years ago · Santiago Trujillo Denunciar

0

Acabo de tener un problema similar y encontré esta publicación SO. En mi experiencia, debe usar la configuración x86 para su proyecto o, de lo contrario, encontrará una excepción. He adaptado el código a tu problema.

 ExternalSettingsManager ext = ExternalSettingsManager.CreateForApplication(@"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\devenv.exe"); SettingsStore store = ext.GetReadOnlySettingsStore(SettingsScope.UserSettings); var propNames = store.GetPropertyNames(@"ExtensionManager\EnabledExtensions"); store.GetString(...)

Además del método anterior, parece posible usar los métodos .Net "normales" para acceder al registro después de llamar a "CreateForApplication". Solo usa algo como esto:

 Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\VisualStudio\15.0\ExtensionManager\EnabledExtensions")
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda