• Viernes 3 de Mayo de 2024, 08:46

Autor Tema:  Registro De Windows  (Leído 1506 veces)

lalo_soft

  • Miembro MUY activo
  • ***
  • Mensajes: 469
    • Ver Perfil
Registro De Windows
« en: Miércoles 15 de Febrero de 2006, 23:09 »
0
Tengo este codigo para crear keys en el registro pero no funca
Código: Text
  1.  
  2.   private gameConfig configuracion;
  3.     private RegistryKey llaveRegistro,GRGroup, FMCZ,juegoConfig;
  4.  
  5.     public SetupGame(string nameGame)
  6.     {
  7.       configuracion = new gameConfig(false);
  8.       // Creacion de las claves de registro
  9.       llaveRegistro = Registry.CurrentUser;
  10.       GRGroup = (llaveRegistro.OpenSubKey("Software",true)).CreateSubKey("GuyaniGames");
  11.       FMCZ = GRGroup.CreateSubKey(nameGame);
  12.       juegoConfig = FMCZ.CreateSubKey("Configuracion");
  13.             juegoConfig.OpenSubKey("Configuracion",true);
  14.       configuracion.VolSonido = System.Convert.ToInt32(juegoConfig.GetValue("Volumen de Sonido",this.configuracion.VolSonido));
  15.       configuracion.VolMusica = System.Convert.ToInt32(juegoConfig.GetValue("Volumen de Musica",this.configuracion.VolMusica));
  16.     }
  17.  

jesusssX

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Re: Registro De Windows
« Respuesta #1 en: Jueves 16 de Febrero de 2006, 00:32 »
0
Muchas veces las directivas de ámbito en C# exigen permisos concretos al sistema, y esto causa confución y aunque el código compile no quiere decir que este se encuentree funcionando correctamente, por esto lo mejor es usar algún script que no ocasiones esto problemas, porque no puruebas con Visual Basic script ya posee clases y los métodos necesario para elaborar registros en Windows, luego puedes llamar ese script desde c #.net para no perder la encapsulación

lalo_soft

  • Miembro MUY activo
  • ***
  • Mensajes: 469
    • Ver Perfil
Re: Registro De Windows
« Respuesta #2 en: Jueves 16 de Febrero de 2006, 01:18 »
0
Al parecer solucione el problema de la siguente forma.
[/CODE]
 public SetupGame(string nameGame)
    {
      configuracion = new gameConfig(false);
      // Creacion de las claves de registro
      llaveRegistro = Registry.CurrentUser;
      GRGroup = (llaveRegistro.OpenSubKey("Software",true)).CreateSubKey("GuyaniGames");
      FMCZ = GRGroup.CreateSubKey(nameGame);
      juegoConfig = FMCZ.CreateSubKey("Configuracion");
       juegoConfig.OpenSubKey("Configuracion",true);
      configuracion.VolSonido = System.Convert.ToInt32(juegoConfig.GetValue("Volumen        de Sonido",this.configuracion.VolSonido));
      configuracion.VolMusica = System.Convert.ToInt32(juegoConfig.GetValue("Volumen de Musica",this.configuracion.VolMusica));
    }
Código: Text
  1.  
  2.  
  3. Este codigo ta bueno ya que al revisar con REGEDIT las claves fueron creadas.
  4.  
  5. Aqui esta la falla!!!
  6.  
  7.  
      public void SaveSetup()
      {  
       juegoConfig.SetValue("Volumen de     Sonido",(Int32)configuracion.VolSonido);
       juegoConfig.SetValue("Volumen de Musica",(Int32)configuracion.VolMusica);
      }
[CODE]  

El detalle es que hay que volver a abrir todas las claves y subclaves (al salir del ambito del primer metodo se cierran todas las claves !yo no sabia eso¡)  para poder escribir un valor.

lalo_soft

  • Miembro MUY activo
  • ***
  • Mensajes: 469
    • Ver Perfil
Re: Registro De Windows
« Respuesta #3 en: Jueves 16 de Febrero de 2006, 01:24 »
0
Sorry repito porque que quedo na q, ver :angry:  :angry:

Al parecer solucione el problema de la siguente forma.
Código: Text
  1.  
  2.  public SetupGame(string nameGame)
  3. {
  4. configuracion = new gameConfig(false);
  5. // Creacion de las claves de registro
  6. llaveRegistro = Registry.CurrentUser;
  7. GRGroup = (llaveRegistro.OpenSubKey("Software",true)).CreateSubKey("GuyaniGames");
  8. FMCZ = GRGroup.CreateSubKey(nameGame);
  9. juegoConfig = FMCZ.CreateSubKey("Configuracion");
  10. juegoConfig.OpenSubKey("Configuracion",true);
  11. configuracion.VolSonido = System.Convert.ToInt32(juegoConfig.GetValue("Volumen de Sonido",this.configuracion.VolSonido));
  12. configuracion.VolMusica = System.Convert.ToInt32(juegoConfig.GetValue("Volumen de Musica",this.configuracion.VolMusica));
  13. }
  14.  
  15.  

Este codigo ta bueno ya que al revisar con REGEDIT las claves fueron creadas.

Aqui esta la falla!!! :huh:  :huh:

Código: Text
  1.  
  2.  public void SaveSetup()
  3. {
  4. juegoConfig.SetValue("Volumen de Sonido",(Int32)configuracion.VolSonido);
  5. juegoConfig.SetValue("Volumen de Musica",(Int32)configuracion.VolMusica);
  6. }
  7.  
  8.  

El detalle es que hay que volver a abrir todas las claves y subclaves (al salir del ambito del primer metodo se cierran todas las claves !yo no sabia eso¡ :whistling: ) para poder escribir un valor.

lalo_soft

  • Miembro MUY activo
  • ***
  • Mensajes: 469
    • Ver Perfil
Re: Registro De Windows
« Respuesta #4 en: Jueves 16 de Febrero de 2006, 02:17 »
0
Citar
porque no puruebas con Visual Basic script

Creo que los post aqui mostrado deben ser para VC#   <_< ¿ho NO?..