Jeśli zastanawiasz się, dlaczego pliki PDF utworzone przy użyciu sterownika Microsoft Print to PDF nie są indeksowane przez wyszukiwarkę Windows i nie pojawiają się w wynikach wyszukiwania, oto dlaczego tak się dzieje.
Aktualizacja: Ten błąd został naprawiony w nowszych wersjach systemu Windows 10.
Microsoft Print to PDF dodaje atrybut FILE_ATTRIBUTE_TEMPORARY („T”) podczas przesyłania do formatu PDF. Jak zauważa Raymond Chen [Microsoft] na swoim blogu, jeśli dla pliku ustawiony jest atrybut „Tymczasowy”, wyszukiwarka Windows go nie indeksuje, co widać na poniższym obrazku.
Jeśli masz zainstalowane oprogramowanie do zapisu plików PDF, otwórz plik PDF z ustawionym atrybutem „T” i zapisz plik. To usuwa atrybut „T”.
Korzystanie z BulkFileChanger do usunięcia atrybutu tymczasowego
Narzędzie BulkFileChanger firmy NirSoft umożliwia ustawienie lub wyłączenie atrybutu tymczasowego (lub dowolnego innego atrybutu) dla listy wybranych plików.
Dodaj pliki PDF „Tymczasowe” do pola listy i wybierz wszystkie. Kliknij Działania, Zmień czas / atrybuty (F6), ustaw Atrybut tymczasowy na Wyłącz i kliknij Zrób to.
Korzystanie z PowerShell
Ten wiersz polecenia programu PowerShell opublikowany przez Blog zespołu usług katalogowych usuwa atrybut TEMPORARY dla WSZYSTKICH plików w folderze D: \ Data w tym przykładzie:
Get-childitem D: Data | ForEach-Object -process {if (($ _. Atrybuty -band 0x100) -eq 0x100) {$ _. Atrybuty = ($ _. Atrybuty -band 0xFEFF)}}
… A Search wyświetla to teraz.
Sprawdź, czy dla pliku ustawiony jest atrybut „T”
Kliknij plik prawym przyciskiem myszy, kliknij polecenie Właściwości. Kliknij kartę Szczegóły, aby sprawdzić atrybuty.
Za pomocą wiersza polecenia:
Polecenie Attrib nie informuje, czy dla pliku ustawiono atrybut Temporary; musisz użyć FSUtil, aby się tego dowiedzieć.
fsutil usn readdata
Wartość atrybutu pliku 0x120 oznacza, że ustawione są atrybuty ARCHIWUM i TEMPORARY. Oto możliwe wartości (maska bitowa): (z Directory Services - MS Team Blog)
- CZYTELNIE 0x1
- UKRYTY 0x2
- SYSTEM 0x4
- KATALOG 0x10
- ARCHIWUM 0x20
- URZĄDZENIE 0x40
- NORMALNY 0x80
- TYMCZASOWE 0x100
- SPARSE_FILE 0x200
- REPARSE_POINT 0x400
- SPRĘŻONE 0x800
- OFFLINE 0x1000
- NOT_CONTENT_INDEXED 0x2000
- SZYFROWANE 0x4000
Po użyciu BulkFileChanger lub polecenia PowerShell do usunięcia atrybutu „T” uruchomienie FSUtil pokazuje teraz następujące dane wyjściowe:
Kompilacja systemu Windows 10 miała numer 10586.104, gdy opublikowano ten artykuł.