Polecenie assoc wyświetla listę rozszerzeń plików wraz z powiązanymi z nimi typami programów obsługujących.
Jak działa polecenie assoc w systemie Windows
assoc jest poleceniem interpretera cmd.exe służącym do wyświetlania i modyfikowania skojarzeń rozszerzeń plików z identyfikatorami typów plików. Rozszerzenie zapisuje się z kropką, na przykład .txt, .jpg albo .docx. Uruchomienie samego polecenia bez parametrów wyświetla listę znanych skojarzeń, zwykle w postaci .rozszerzenie=identyfikator_typu. Przykładowy wpis .txt=txtfile oznacza, że pliki z rozszerzeniem .txt są przypisane do typu pliku identyfikowanego jako txtfile.
Wynik działania assoc nie jest pełną listą zainstalowanych programów. Prawa strona wpisu jest nazwą identyfikatora, często nazywanego ProgID, a niekoniecznie nazwą aplikacji widoczną dla użytkownika. Dopiero dalsze ustawienia powłoki Windows określają, jakie polecenie zostanie uruchomione po dwukrotnym kliknięciu pliku. Dlatego informacja .pdf=AcroExch.Document.DC wskazuje typ skojarzenia, ale sama w sobie nie pokazuje całej ścieżki do programu Adobe Acrobat Reader.
Składnia, odczyt i zmiana skojarzeń rozszerzeń
Podstawowa składnia polecenia ma postać assoc, assoc .rozszerzenie albo assoc .rozszerzenie=typ_pliku. Pierwsza forma pokazuje wszystkie dostępne skojarzenia. Druga odczytuje wpis dotyczący jednego rozszerzenia, na przykład assoc .log. Trzecia przypisuje rozszerzeniu wskazany identyfikator, na przykład assoc .log=txtfile. Po takim ustawieniu pliki z rozszerzeniem .log zostają powiązane z typem txtfile, o ile pozostałe ustawienia tego typu wskazują odpowiednią akcję otwierania.
Usunięcie skojarzenia wykonuje się przez podanie rozszerzenia bez wartości po znaku równości, na przykład assoc .log=. Operacja zmienia konfigurację skojarzeń plików, więc nie usuwa samych plików ani programu. Trzeba jednak uważać na sposób zapisu rozszerzenia: assoc txt=txtfile nie jest tym samym co poprawnie zapisane assoc .txt=txtfile. Polecenie działa w środowisku wiersza polecenia Windows. W PowerShellu można wywołać je przez cmd /c assoc .txt, aby jednoznacznie uruchomić polecenie dostępne w cmd.exe.
Różnica między assoc, ftype i programem otwierającym plik
assoc odpowiada za pierwszą część mechanizmu: łączy rozszerzenie z nazwą typu pliku. Drugą część można sprawdzać poleceniem ftype, które wyświetla albo modyfikuje definicję typu. Przykładowo ftype txtfile może zwrócić polecenie otwierające plik tekstowy, takie jak txtfile="%SystemRoot%\system32\NOTEPAD.EXE" "%1". Zmienna %1 reprezentuje ścieżkę pliku przekazaną do programu. W praktyce polecenia assoc i ftype opisują dwa powiązane, ale różne poziomy konfiguracji.
Windows może dodatkowo stosować ustawienia użytkownika zapisane w rejestrze, w tym wybór aplikacji dokonany w interfejsie „Otwórz za pomocą”. Z tego powodu wynik assoc nie zawsze wystarcza do wyjaśnienia, dlaczego konkretny plik uruchamia określony program albo wyświetla komunikat o braku skojarzonej aplikacji. Znaczenie mają również wpisy powłoki dla danego ProgID, akcja shell\open\command, dostępność programu oraz poprawność ścieżki zapisanej w konfiguracji. Samo skojarzenie rozszerzenia nie gwarantuje więc, że aplikacja wskazana w dalszej części konfiguracji nadal istnieje na dysku.
Wykorzystanie assoc przy naprawie otwierania plików
Polecenie jest przydatne, gdy pliki określonego typu przestały otwierać się po instalacji, odinstalowaniu albo zmianie programu domyślnego. Najpierw można odczytać bieżące ustawienie, na przykład poleceniem assoc .jpg, a następnie sprawdzić identyfikator zwrócony po prawej stronie znaku równości. Jeżeli problem dotyczy także polecenia uruchamiającego aplikację, warto osobno użyć ftype dla odczytanego identyfikatora. Takie sprawdzenie pomaga odróżnić błędne przypisanie rozszerzenia od uszkodzonego lub nieobecnego programu.
Przed ręczną zmianą konfiguracji należy zanotować pierwotny wynik, ponieważ nieprawidłowy ProgID albo błędna komenda otwierania może spowodować dalsze problemy z plikami. W wielu przypadkach bezpieczniejsza jest zmiana aplikacji domyślnej w ustawieniach Windows lub ponowna rejestracja programu, ponieważ instalator może odtworzyć wymagane wpisy powłoki. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów i komputerów PC, w tym diagnozowaniem błędnych skojarzeń plików oraz problemów z uruchamianiem popularnego oprogramowania.