Nie jestem do końca pewien, jak to działa. Mogę więc dodawać elementy do „nowego” menu kontekstowego (które pojawia się po kliknięciu prawym przyciskiem myszy lub naciśnięciu przycisku menu) za pomocą edytora rejestru. Na przykład, jeśli chcę utworzyć nowy wpis pliku .cpp, mogę zaimportować plik .reg, który wygląda następująco:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.cpp]
@="cpp"
[HKEY_CLASSES_ROOT\.cpp\ShellNew]
"NullFile"=""
[HKEY_CLASSES_ROOT\cpp]
@="C++ File"
Tak więc mogę ustawić rozszerzenie i opis, który pojawia się dla niego za pomocą tej metody. Nie jestem jednak pewien, w jaki sposób zdecydowana jest ikona wyświetlana obok mojego opisu. To mam na myśli:
Nie jestem pewien, czy system Windows wybierze ten obraz automatycznie na podstawie dowolnego programu, który ustawiłem jako domyślny dla tego rozszerzenia, czy też można go w jakiś sposób ustawić ręcznie w rejestrze.
Czy tę ikonę można ustawić ręcznie?
źródło
Odpowiedzi:
Domyślnie Explorer użyje ikony ustawionej według typu pliku, ale można to zmienić, umieszczając
IconPath
wartość wShellNew
kluczu. Zrozumiałem to, używając Monitora procesów do sprawdzania aktywności rejestruexplorer.exe
.Wygląda na to, że istniejące wpisy systemu Windows używają
REG_EXPAND_SZ
typu danych, aleREG_SZ
działa równie dobrze i jest o wiele łatwiejsze do włączenia do pliku REG. Format to pełna ścieżka do pliku zawierającego ikonę, następnie przecinek, a następnie numer zasobu ikony w pliku. Na tym zrzucie ekranu użyłem%ProgramFiles%\Windows Mail\wab.exe,10
:Jak widać, nie wpływa to na ikonę pliku poza nową listą:
Aby uwzględnić tę zmianę w pliku REG, dodaj tę linię bezpośrednio pod linią
"NullFile"=""
:Aby zmiana zaczęła obowiązywać, konieczne będzie ponowne uruchomienie Eksploratora.
źródło
REG_SZ
działa ze zmiennymi środowiskowymi. Prawdopodobnie Eksplorator rozszerza go ponownie.RegQueryValueEx
. .NET Framework zrobi ekspansję naREG_EXPAND_SZ
wartości domyślnie, ale pod spodem Windows API nie.Czy tę ikonę można ustawić ręcznie?
Tak, używając Menedżera typów plików z NirSoft :
Menedżer typów plików - informacje
Source FileTypesMan - Alternatywa dla menedżera „Typów plików” systemu Windows
Szczegółowe instrukcje
Źródło Jak zmienić ikonę określonego typu pliku w systemie Windows
Zrzeczenie się
Nie jestem w żaden sposób powiązany z NirSoft , jestem tylko użytkownikiem końcowym ich oprogramowania.
źródło
Dla rekordu: po pierwszym wierszu pliku * .reg należy dodać pusty wiersz („Edytor rejestru systemu Windows w wersji 5.00”), w przeciwnym razie wystąpi błąd po uruchomieniu. Zobacz: https://support.microsoft.com/en-us/help/310516/how-to-add-modify-or-delete-registry-subkeys-and-values-by-using-a-reg#syntax dla szczegóły składni.
BTW, to nie jest tak naprawdę odpowiedź na pytanie, ale będąc tutaj nowym, nie mogę komentować. Ale moderatorzy @robinCTS i @bertieb sugerują, że można go również przesłać jako odpowiedź, więc proszę bardzo. Może jeden z tych moderatorów może przenieść go do strefy komentarzy pytania (i jednocześnie edytować ten par.)? Dzięki!
źródło