Windows 7 için bir .reg dosyası oluşturma


16

Bir .reg dosyası oluşturdum ancak çift tıkladığımda içe aktarılmak istemiyor.

Belirtilen dosya bir kayıt defteri komut dosyası değil. İkili kayıt defteri dosyalarını yalnızca kayıt defteri düzenleyicisinden alabilirsiniz.

İşte .reg dosyasının içeriği

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

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

Birisi bana yardım edebilir mi? Şimdiden teşekkürler

Yanıtlar:


6

Bu alıntıların bu dosyada nasıl sonuçlandığını bilmiyorum, ancak bunların işe yaramadığını varsayacağım (belki bir Wordpress blogundan kopyaladınız).

Başka bir şey dışında, bence böyle olmalı:

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

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

1
+1 Belki de farklı karakterler kullanan bazı uluslararası girdiler yapmış olabilir.
Tamara Wijsman

Fark etmedim! Haklısın internetten kopyaladım, teşekkürler!
Aximili

34

Bu bir kayıt defteri dosyasının geçerli sözdizimi değil, üstbilgi eksik.

Önden bir çizgi ekleyin: Windows Registry Editor Version 5.00

Geçersiz karakterler olup olmadığını kontrol edin, dosyayı Unicode'a kaydettiyseniz sorun olabilir.


Ancak aximili bu dosyanın unicode olduğundan emin olmalısınız. Ansi dosyaları için REGEDIT4 kullanılmalıdır.
crea7or

1
@ crea7or: Dosyanın eklemeye çalıştığı şey için Unicode olması gerekmez.
Tamara Wijsman

3
Bu cevap doğru.
Gras Double

Gras Double'un dediği gibi, bu cevap doğru.
pdwalker

8

Tüm cevapları keşfettiğim bazı ekstra bilgilerle birlikte derledim.

İlk satırdaki başlık: Windows Registry Editor Version 5.00

  • "CRLF" ile ayrılmış tuşlar arasında boş bir satır
  • boşluk bırakmayan anahtarlar
  • çift ​​tırnak içindeki değerler
  • tamsayı / kelime değerleri onaltılık - harfler için anlaşılır biçimde küçük harf

Misal

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

İzin verilen kodlamalar ayrıca Windows API dizelerine karşılık geliyor gibi görünüyor:

  • 8 bit sabit genişlik: Windows-1252 - neredeyse ISO-8859-1 ile aynı
  • 16 bit sabit genişlik: UCS-2LE (küçük endian) - temelde UTF-16 ile aynı

Not: Bir metin düzenleyici kodlama için "unicode" dediğinde, muhtemelen dahili Windows ile naif olarak uyumlu olmayan değişken genişlikte kodlama olan UTF-8 anlamına gelir.

Not 2:


4

Bu web sitesine bir göz atın, bu sorun bana yardımcı oldu: “Belirtilen dosya bir kayıt defteri komut dosyası değil” - Kodlama sabah nasıl bozabilir

Kodlamanın sabahınızı mahvedebileceği ortaya çıkıyor. İletiye bir göz atarak “… sadece ikili kayıt defteri dosyalarını ... 'dan içe aktar…” diye düşündüm ve “Bu şey neden ikili olduğunu düşünüyor?” Diye düşündüm. Neden gerçekten. Dosyayı tekrar TextPad'de açtım ve sadece Ctrl + S veya Kaydet'e basmak yerine "Farklı Kaydet" i seçtim. Bunu yaparak bu menüyü sundum ve sorunumu vurguladım:

Doğru. Hiçbir şey yapmadan TextPad bu dosyayı Unicode olarak kaydedecekti. Regedit, ANSI kodlu .reg dosyalarını almayı bekler. Bu yüzden Kodlamayı ANSI olarak değiştirdim, dosyayı kaydettim, tekrar çalıştırdım ve her şey yolunda gitti. İyi bir 20 dakika boyunca beni biraz hayal kırıklığına uğrattı, umarım bu başka birine yardımcı olur.


1

Aynı problemi yaşadım çünkü UTF-8-BOM olarak kaydettim. BOM'siz UTF-8 olmalıdır (Byte Order Mark). Kayda değer.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.