Crear un archivo .reg para Windows 7

16

Creé un archivo .reg, pero cuando hago doble clic en él, no quiero importarlo.

El archivo especificado no es un script de registro. Solo puede importar archivos de registro binarios desde el editor de registro.

Aquí está el contenido del archivo .reg

[HKEY_CLASSES_ROOT\Folder\shell\PngCrush]
@=”PNG Crush”

[HKEY_CLASSES-ROOT\Folder\shell\PngCrush\command]
@=”E:\Programs\PNGCrush\crush.bat %1”

¿Alguien podría ayudarme? Gracias por adelantado

Aximili
fuente

Respuestas:

6

No sé cómo esas citas terminaron en ese archivo, pero supongo que no funcionan (tal vez lo copiaste de un blog de Wordpress).

Además de cualquier otra cosa, creo que debería ser así:

[HKEY_CLASSES_ROOT\Folder\shell\PngCrush]
@="PNG Crush"

[HKEY_CLASSES-ROOT\Folder\shell\PngCrush\command]
@="E:\Programs\PNGCrush\crush.bat %1"
Der Hochstapler
fuente
1
+1 Podría ser, tal vez hizo alguna entrada internacional que utiliza diferentes caracteres.
Tamara Wijsman
¡No me di cuenta de eso! Tienes razón, lo copié de la red, ¡gracias!
Aximili
34

Esa no es la sintaxis válida de un archivo de registro, le falta el encabezado.

Agregue una línea al frente con: Windows Registry Editor Version 5.00

Compruebe si hay caracteres no válidos, si guardó el archivo en Unicode, ese podría ser el problema.

Tamara Wijsman
fuente
Pero aximili debe asegurarse de que este archivo sea unicode. REGEDIT4 debe usarse para archivos ansi.
crea7or
1
@ crea7or: el archivo no necesita ser Unicode para lo que está intentando insertar.
Tamara Wijsman
3
Esta respuesta es la correcta.
Gras Double
Como dice Gras Double, esta respuesta es la correcta.
pdwalker
8

Simplemente compilando todas las respuestas junto con información adicional que descubrí.

Encabezado en la primera línea: Windows Registry Editor Version 5.00

  • Una línea en blanco entre las teclas delimitadas por "CRLF"
  • llaves llaves sin espacios
  • valores entre comillas dobles
  • valores enteros / palabras en hexadecimal - minúsculas para las letras aparentemente

Ejemplo

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\MyOrg]

[HKEY_LOCAL_MACHINE\SOFTWARE\MyOrg\MyKey]
"My Value"="Some String"
"My Flag or Integer"=dword:00000001

Las codificaciones permitidas también parecen corresponder a las cadenas API de Windows que son:

  • Ancho fijo de 8 bits: Windows-1252, casi lo mismo que ISO-8859-1
  • Ancho fijo de 16 bits: UCS-2LE (little endian), básicamente lo mismo que UTF-16

Nota: cuando un editor de texto dice "unicode" para la codificación, probablemente significa UTF-8, que es una codificación de ancho variable que no es ingenuamente compatible con Windows interno.

Nota 2 (edición): ASCII es de 7 bits y todos los procesadores que conozco en uso tienen una potencia de 2 bits, por lo que siempre estará envuelto en otro superconjunto ASCII como 1252. #thingsyoulearnafteruni

Seth
fuente
4

Eche un vistazo a este sitio web, me ayudó con este problema: "El archivo especificado no es un script de registro" - Cómo la codificación puede arruinar su mañana

Resulta que la codificación puede arruinar tu mañana. Echando un vistazo al mensaje, vi el "... solo importar archivos de registro binarios de ..." y pensé "¿Por qué cree esto que es binario?". Por qué de hecho. Abrí el archivo nuevamente en TextPad y en lugar de presionar Ctrl + S o Guardar, elegí "Guardar como". Al hacerlo, se presentó este menú y he resaltado mi problema:

Así es. Sin que yo haga nada, TextPad iba a guardar este archivo como Unicode. Regedit espera obtener archivos .reg codificados por ANSI. Así que cambié la codificación a ANSI, guardé el archivo, lo volví a ejecutar y todo funcionó bien. Me causó cierta frustración durante unos buenos 20 minutos, así que espero que esto ayude a alguien más.

Vitumbiko Smith Nkhwazi
fuente
1

Tuve el mismo problema porque lo guardé como UTF-8-BOM. Debe ser UTF-8 sin BOM (marca de orden de bytes). Vale la pena señalarlo.

Paweł Walaszek
fuente
0

También puede usar la utilidad REG para manipular el registro a través de la línea de comandos, si se ajusta a sus necesidades.

lrosa
fuente