Widzę, że piszesz do HKEY_CLASSES_ROOT
tego pliku reg w pytaniu. Ten ul jest połączonym widokiem HKEY_LOCAL_MACHINE\Software\Classes
i HKEY_CURRENT_USER\Software\Classes
.
Powodem, dla którego twój plik działa tylko w przypadku wcześniej niepowiązanych plików, jest to, że pisze w celu HKEY_CLASSES_ROOT
przekierowania do odpowiedniego klucza w HKEY_LOCAL_MACHINE
(gałęzi dla domyślnych ustawień systemu i ustawień wszystkich użytkowników). Wystąpi jednak problem, ponieważ ustawienia powiązania plików w HKEY_CURRENT_USER
(które zawierają ustawienia poszczególnych użytkowników) zastępują ustawienia domyślne systemu.
Ponadto, jeśli rozszerzenie jest kontrolowane przez powiązanie z „domyślnymi programami”, informacje o powiązaniu pliku są przechowywane w HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\<.ext>
. Możesz sprawdzić, czy twoje rozszerzenie ma to powiązanie, sprawdzając istnienie tego klucza.
Możesz edytować plik .reg, aby działał dla dowolnego pliku, w tym wcześniej skojarzonych plików, kopiując go dla tych kluczy zarówno w, jakHKEY_LOCAL_MACHINE
i w HKEY_CURRENT_USER
. Podobnie możesz usunąć powiązanie, usuwając odpowiednie klucze w obu ulach (w tym w FileExts
lokalizacji).
Działający plik .reg do usuwania powiązania dla określonego rozszerzenia wygląda następująco (co usuwa .blerg
przypisania):
Windows Registry Editor Version 5.00
; Created with Default Programs Editor
; http://defaultprogramseditor.com/
; Delete Extension
[-HKEY_LOCAL_MACHINE\Software\Classes\.blerg]
[-HKEY_CURRENT_USER\Software\Classes\.blerg]
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.blerg]
Jeśli jednak nie chcesz się uczyć na temat wewnętrznych elementów rejestru i różnych tajemnych aspektów skojarzenia plików Windows, zalecam skorzystanie z Edytora programów domyślnych, aby wprowadzić te zmiany - możesz nawet wyeksportować akcję do plik .reg, który wydaje się idealnie pasować do twoich potrzeb.
W twoim przypadku, to tak proste, jak kliknięcie File Type Settings
, a następnie Delete an extension
. Wybierz rozszerzenie i zamiast zapisywać w rejestrze, naciśnij małą strzałkę na Delete Extension
przycisku i kliknij Save to .reg file...
. Spowoduje to utworzenie pełnego i skomentowanego pliku .reg tej akcji, który można zapisać lub rozpowszechnić na innych komputerach.
To pytanie wydaje się mieć wiele założeń, które są wątpliwe.
Po pierwsze, dlaczego chcesz użyć pliku .reg, aby usunąć skojarzenie pliku? Dlaczego nie zrobić tego po prostu z interfejsu użytkownika? Czy robisz to na wielu stacjach roboczych?
Po drugie, nie rozumiem, dlaczego plik .reg, z którym masz połączenie, działa tylko z wcześniej niepowiązanymi rozszerzeniami plików.
W każdym razie, aby usunąć klucz za pomocą pliku .reg, należy poprzedzić myślnik nazwą klucza. Aby usunąć wartość, ustaw ją na znak łącznika. Wszystko to przeliterowano tutaj .
Aby usunąć powiązanie pliku, musisz usunąć klucz do rozszerzenia pliku, np
Samo to uniemożliwiłoby otwarcie pliku, ale dla kompletności należy również usunąć klucz dla nazwy typu, który był wartością domyślną w kluczu rozszerzenia pliku. Przykład:
źródło