2012-12-18 14 views
7

Mam duży zbiór folderów dla projektów, nad którymi pracuję. Próbowałem znaleźć lepszy sposób sortowania ich wszystkich przez długi czas i chcę napisać aplikację, która tworzy grupy na podstawie dowolnych kryteriów, takich jak "foldery z 2011" lub "foldery zawierające typ pliku ax "itd.Tworzenie folderów wirtualnych i podłączanie ich do systemu plików

Jest to dość proste i nie stanowiłoby większego problemu z kodowaniem przy użyciu własnego interfejsu użytkownika w winForms lub WPF lub czymś podobnym. Ale myślę, że byłoby znacznie lepiej, gdybym mógł sprawić, że te foldery wydają się być częścią systemu plików, więc inne aplikacje (takie jak istniejący odkrywcy plików) mogą je zobaczyć.

Czy to możliwe? Czy spowodowałoby to problemy, których nie rozważałem? Jak mam to zrobić, jeśli to możliwe?

Jednym ze sposobów na zrobienie tego byłoby monitorowanie aplikacji systemu plików i tworzenie skrótów do folderów za każdym razem, gdy pojawi się zmiana, ale jestem ciekawy, czy możliwe jest przedstawienie fałszywego systemu plików do eksploracji przez " Folder wrota”

EDIT: Ok jest to oczywiście możliwe, ponieważ http://www.virtualfolder.net/ może to zrobić, a teraz, gdy myślę o tym, dzięki czemu można TrueCrypt, chociaż byłoby miło, gdyby nie muszą pojawić się jako oddzielny napęd. Pojawia się więc pytanie, jak ją wdrożyć?

+0

Windows 7 ma wbudowaną tę funkcję –

Odpowiedz

4

Dokonuje się tego za pomocą sterowników systemu plików lub sterowników filtrów systemu plików. Najpierw utwórz wirtualny system plików i podłącz go do litery dysku, a także do folderu na dysku NTFS (folder musi istnieć, ale jego zawartość jest "zamieniana" na drzewo katalogów wirtualnego systemu plików). Sterowniki filtru systemu plików umożliwiają wprowadzenie wirtualnych plików i folderów w istniejących folderach bez ich zastępowania.

VirtualFolder używa sterownika systemu plików podczas tworzenia litery dysku.

Oba typy sterowników napisane są w C i pracują w trybie jądra. Pisanie ich wymaga głębokiej znajomości wewnętrznych Windows i doświadczenia z rozwojem sterowników (ponieważ sterowniki systemów plików są jednym z najbardziej skomplikowanych typów sterowników).

Oferujemy kilka produktów związanych z pamięcią wirtualną. Jednym z nich, Callback File System, jest sterownik systemu plików. Wywołuje twój kod trybu użytkownika, aby wykonać rzeczywiste funkcje systemu plików. Innym produktem, CallbackFilter, jest sterownik filtru FS (a także wywołuje twój kod trybu użytkownika). Obecna wersja programu CallbackFilter nie pozwala jednak na wprowadzanie plików i folderów wirtualnych (zostanie to zaimplementowane w następnym wydaniu).

Dostępny jest także produkt do montażu plików Pismo, wykorzystujący techniki sterowników filtrów. Możesz sprawdzić z nimi, czy to, czego potrzebujesz, może zostać wykonane.

9

Możesz utworzyć Shell Namespace Extension, który zbiera informacje o plikach, które chcesz i wyświetla w Eksploratorze Windows w dowolny sposób. You can choose where Twoje rozszerzenie znajduje się jako własny węzeł najwyższego poziomu, element podrzędny innego folderu/rozszerzenia systemowego lub jako element podrzędny w folderze systemu plików.

Pisanie SNE nie jest trywialne, ale jest o wiele łatwiejsze niż pisanie sterownika systemu plików niższego poziomu i nie wymaga specjalnych kompilatorów zorientowanych na sterowniki. Każdy kompilator obsługujący tworzenie obiektów COM będzie działał.

0

Z tego co wiem, poszukujesz sposobu na zaprezentowanie wyników predefiniowanych zapytań do plików, tak aby wyglądały tak, jakby znajdowały się w określonej lokalizacji w systemie plików. Jeśli to prawda, możesz zajrzeć do Hard Links and Junctions.Istnieją ograniczenia co do tego, co można zrobić z tymi usługami systemu plików. Jednak jest to naprawdę proste do wdrożenia.

Powiązane problemy