Windows 7 용 .reg 파일 작성


16

.reg 파일을 만들었지 만 두 번 클릭하면 가져 오기를 원하지 않습니다.

지정된 파일이 레지스트리 스크립트가 아닙니다. 레지스트리 편집기 내에서만 바이너리 레지스트리 파일을 가져올 수 있습니다.

다음은 .reg 파일의 내용입니다.

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

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

누군가 나를 도울 수 있습니까? 미리 감사드립니다

답변:


6

나는 그 따옴표가 그 파일에서 어떻게 끝났는지 알지 못하지만 그 따옴표가 작동하지 않는다고 가정합니다 (Wordpress 블로그에서 복사했을 수도 있습니다).

다른 것 외에도 다음과 같아야한다고 생각합니다.

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

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

1
+1 아마도 다른 문자를 사용하는 국제적인 입력을했을 수도 있습니다.
— Tamara Wijsman

나는 그것을 알아 차리지 못했다! 네가 맞아 내가 그물에서 복사 했어, 고마워
— Aximili

34

레지스트리 파일의 유효한 구문이 아니며 헤더가 없습니다.

앞에 줄을 추가하십시오. Windows Registry Editor Version 5.00

문제가 될 수있는 유니 코드로 파일을 저장 한 경우 유효하지 않은 문자가 있는지 확인하십시오.


그러나 aximili는이 파일이 유니 코드인지 확인했습니다. REGEDIT4는 ansi 파일에 사용해야합니다.
— crea7or

1
@ crea7or : 파일은 그가 삽입하려는 것에 유니 코드 일 필요는 없습니다.
— Tamara Wijsman

3
이 답변은 정답입니다.
— Gras Double

Gras Double이 말했듯 이이 답변이 옳습니다.
— pdwalker

8

내가 찾은 추가 정보와 함께 모든 답변을 컴파일하십시오.

첫 번째 줄의 헤더 : Windows Registry Editor Version 5.00

  • "CRLF"로 구분 된 키 사이의 빈 줄
  • 공백이없는 키 괄호
  • 큰 따옴표로 묶은 값
  • 16 진 정수 / 단어 값-문자의 소문자

예

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

허용 된 인코딩은 다음과 같은 Windows API 문자열에 해당하는 것 같습니다.

  • 8 비트 고정 폭 : Windows-1252-ISO-8859-1과 거의 동일
  • 16 비트 고정 폭 : UCS-2LE (little endian)-기본적으로 UTF-16과 동일

참고 : 텍스트 편집기에서 인코딩에 "unicode"라고 표시되면 내부 Windows와 순전히 호환되지 않는 가변 폭 인코딩 인 UTF-8을 의미 할 수 있습니다.

참고 2 (편집) : ASCII는 7 비트이며 사용중인 모든 프로세서는 2 비트의 거듭 제곱이므로 항상 1252와 같은 다른 ASCII 수퍼 세트로 래핑됩니다. #thingsyoulearnafteruni


4

이 웹 사이트를 살펴보면이 문제를 해결하는 데 도움이됩니다. "지정된 파일이 레지스트리 스크립트가 아닙니다"– 인코딩으로 아침을 망치는 방법

인코딩이 아침을 망칠 수 있음이 밝혀졌습니다. “……에서 바이너리 레지스트리 파일 만 가져 오기”라는 메시지를보고“이것이 왜 바이너리라고 생각합니까?”라고 생각했습니다. 왜 그렇습니까? TextPad에서 파일을 다시 열고 Ctrl + S 나 Save를 누르기보다는 "다른 이름으로 저장"을 선택했습니다. 그렇게하면이 메뉴가 표시되고 내 문제를 강조했습니다.

맞습니다. 아무것도하지 않고 TextPad는이 파일을 유니 코드로 저장하려고했습니다. Regedit는 ANSI로 인코딩 된 .reg 파일을 가져옵니다. 그래서 인코딩을 ANSI로 변경하고 파일을 저장 한 다음 다시 실행하면 모든 것이 잘 작동했습니다. 20 분 동안 좌절을 겪었으므로 다른 사람을 도울 수 있기를 바랍니다.


1

UTF-8-BOM으로 저장했기 때문에 동일한 문제가 발생했습니다. BOM이없는 UTF-8이어야합니다 (바이트 순서 표시). 주목할 가치가 있습니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.