Czytelnik odkrył jedną ciekawą funkcję Eksploratora Explorer w systemie Windows 7 z katalogami sieciowymi na serwerze plików. Problem polegał na tym, że natychmiast po skopiowaniu / przeniesieniu katalogu do folderu sieciowego system odmówił jego usunięcia lub zmiany nazwy. Możesz zmienić nazwę / usunąć taki katalog tylko po chwili (1-5 minut).
Podczas próby usunięcia takiego katalogu sieciowego pojawia się błąd:
Nie można wykonać akcji, ponieważ folder lub plik w nim jest otwarty w innym programie. Zamknij plik lub folder i spróbuj ponownie..Operacji nie można ukończyć, ponieważ ten folder lub plik jest otwarty w innym programie. Zamknij folder lub plik i spróbuj ponownie..
Jak się okazało, haczyk był związany z obecnością pliku Kciuki w górę.db - plik z miniaturami obrazów. Od czasów systemu Windows XP system operacyjny Windows może utworzyć pamięć podręczną z miniaturami obrazów (i innych typów plików) i przechowywać ją w ukrytym pliku Thumbs.db każdego katalogu. Korzystając z pamięci podręcznej, uzyskuje się skrócenie czasu pobierania i wyświetlania plików miniatur w Eksploratorze. Przy wyłączonej pamięci podręcznej obrazów system musi pobierać pliki obrazów za każdym razem i generować dla nich miniatury, co wymaga dużych zasobów (szczególnie w przypadku folderów z dużą liczbą obrazów).
Ale jak się okazało, zdarzają się sytuacje (KB2025703 - Zmiana nazwy folderu sieciowego w Eksploratorze Windows 7 kończy się niepowodzeniem z „akcji nie można ukończyć ...”), gdy obecność pliku thumbs.db z pamięcią podręczną miniatur uniemożliwia usunięcie lub zmianę nazwy katalogów z Eksploratora Windows.
Najwyraźniej system potrzebuje trochę czasu, aby wygenerować plik z pamięcią podręczną miniaturek, dlatego podczas generowania lub aktualizowania tego pliku nie można nic zrobić z jego katalogiem nadrzędnym, dopóki blokada zapisu w pliku pamięci podręcznej nie zostanie zwolniona..
W takim przypadku możesz wyłączyć automatyczne generowanie pliku thumbs.db. na folderach sieciowych i dyskach.
Treść
- Wyłącz tworzenie pliku Thumbs.db w folderach sieciowych za pomocą obiektu zasad grupy
- Wyłączanie tworzenia Thumbs.db w folderach sieciowych przez rejestr
- Jak usunąć pliki Thumbs.db ze wszystkich katalogów
Wyłącz tworzenie pliku Thumbs.db w folderach sieciowych za pomocą obiektu zasad grupy
Aby uniemożliwić Eksploratorowi Windows przeglądanie katalogów w celu utworzenia ukrytego pliku za pomocą pamięci podręcznej miniaturek obrazów Thumbs.db, można użyć ustawień zasad grupy.
Interesujące nas zasady znajdują się w sekcji edytora GPO:
- W systemie Windows 7 (Vista) niezbędne zasady znajdują się w sekcji. - Konfiguracja użytkownika -> Szablony administracyjne -> Składniki systemu Windows -> Eksplorator Windows.
- W systemie Windows 8 / Windows 10 - Konfiguracja użytkownika -> Szablony administracyjne -> Składniki systemu Windows -> Eksplorator plików
Znajdź i włącz (przetłumacz na Włącz) następujące zasady:
- Wyłącz wyświetlanie miniatur i wyświetlaj tylko ikony w folderach sieciowych
- Wyłącz buforowanie miniatur w ukrytych plikach thumbs.db
- Wyłącz wyświetlanie miniatur i wyświetlaj tylko ikony
Przede wszystkim interesuje nas 1 zasada, która zabrania Explorerowi tworzenia thumbs.db w katalogach sieciowych.
Pozostaje przypisać zasadę użytkownikom i zaktualizować ją na komputerach (gpupdate / force)
Wyłączanie tworzenia Thumbs.db w folderach sieciowych przez rejestr
W domowych wersjach systemu Windows, które nie mają edytora zasad grupy, można wyłączyć tworzenie ukrytych plików thumbs.db za pomocą edytora rejestru (regedit.exe).
W tym celu w sekcji HKEY_CURRENT_USER \ Software \ Policies \ Microsoft \ Windows \ utwórz podsekcję Explorer (w Windows 7 już istnieje), w którym należy utworzyć klucz typu REG_DWORD o nazwie DisableThumbsDBOnNetworkFolders i wartość 1
Tę samą operację można wykonać za pomocą jednego polecenia:
reg dodaj „HKCU \ SOFTWARE \ Policies \ Microsoft \ Windows \ Explorer” / v DisableThumbsDBOnNetworkFolders / d 0x1 / t REG_DWORD / f
Jak usunąć pliki Thumbs.db ze wszystkich katalogów
Istniejące pliki Thumbs.db nie są automatycznie usuwane po włączeniu zasad. Za pomocą programu PowerShell można rekurencyjnie usuwać wszystkie pliki Thumbs.db z określonego katalogu dysku lub serwera.
Przejdźmy do żądanego katalogu:
cd c: \ udostępnij
Uzyskaj listę wszystkich Thumbs.dbGet-ChildItem -Path. -Include Thumbs.db -Recurse -Name -Force | Remove-Item -Force -WhatIF
Usuń znalezione plikiGet-ChildItem -Path. -Include Thumbs.db -Recurse -Name -Force | Remove-Item -Force