Página 1 de 1

[RESUELTO] Ayuda para crear clave de registro, gracias

Publicado: 8 de junio de 2021 - 11:50 a. m.
por Basstien
Buen día,

Quiero fusionar una clave de registro durante la implementación de ultravnc.
Lo intenté con
ESTE GUIÓN

Código: Seleccionar todo

registry_setstring( HKEY_LOCAL_MACHINE,"SOFTWARE\ORL\WinVNC3",'ACL','06,25,50,00,02,00,00,00,00,00,27,00,03,00,00,00,01,07,00,10,00,00,00,\
  78,15,00,00,00,7f,46,02,50,18,3f,d5,03,b4,08,ba,43,8e,54,00,00,00,00,24,00,\
  07,00,01,00,01,05,00,00,04,00,00,05,15,00,48,00,8f,46,02,50,78,3f,d5,03,b4,\
  02,ba,43,00,02,00,00', type=0x00000003)
Pero esto me está causando un problema con la creación del registro porque los valores no aparecen en el orden correcto a nivel de clave de registro.
¿Tienes una solución?

Entonces pensé en automatizar la instalación usando el símbolo del sistema, pero no tengo el conocimiento necesario.
PD: Para el tipo 0x00000003, esto es equivalente a reg_binary; es la única forma en que pude implementarlo

¿TIENES UNA SOLUCIÓN?
gracias de antemano

Re: Ayuda para crear una clave de registro, gracias

Publicado: 16 de junio de 2021 - 08:39
por dcardon
Consulte las reglas del foro más arriba.

El registro de claves binarias debería funcionar sin problemas en WAPT 2.0.

Re: Ayuda para crear una clave de registro, gracias

Publicado: 16 de junio de 2021 - 09:20
por htouvet
El blob binario se representa en su código en forma hexadecimal.
Se debe utilizar el módulo binascii para transformarlo en binario 'verdadero'

Si el valor es de tipo binario, registry_setstring lo almacena en el registro con el tipo REG_BINARY

Código: Seleccionar todo

from setuphelpers import *
import binascii
registry_setstring( HKEY_LOCAL_MACHINE,
    r"SOFTWARE\ORL\WinVNC3",
    'ACL',
    binascii.a2b_hex('06,25,50,00,02,00,00,00,00,00,27,00,03,00,00,00,01,07,00,10,00,00,00,78,15,00,00,00,7f,46,02,50,18,3f,d5,03,b4,08,ba,43,8e,54,00,00,00,00,24,00,07,00,01,00,01,05,00,00,04,00,00,05,15,00,48,00,8f,46,02,50,78,3f,d5,03,b4,02,ba,43,00,02,00,00'.replace(',','')))