Jak mogę zwiększyć maksymalny rozmiar ścieżki pliku w systemie Windows 7? [duplikować]

Odpowiedzi:

21

Niestety odpowiedź brzmi „ zależy od programu ”. To od osób, które piszą programy, zależy, która metoda będzie używana. W rzeczywistości (bezwstydna wtyczka) kilka tygodni temu napisałem wpis na blogu, opisując problem w Explorer nadal ograniczony przez MAX_PATH .

W zależności od tego, co próbujesz zrobić, możesz użyć innego programu do zarządzania długimi ścieżkami, takiego jak Microsoft Word. W przeciwnym razie jedyną inną opcją jest po prostu „z tym żyć”, ponieważ tak było od zawsze i wydaje się, że nie zmieni się w najbliższym czasie.

Pomyślałem, że wspomnę również, że 64-bitowy system Windows również używa interfejsu API „Win32” i CreateFileAproblem dotyczy zarówno programów 32-bitowych, jak i 64-bitowych.


EDYCJA: Geeky Szczegóły

Problem występuje tylko w CreateFileAfunkcji i CreateFileWfunkcji, gdy używana jest ścieżka bezwzględna z literą dysku. Jedyną metodą obejścia tego (w kodzie) jest użycie \\?\C:\Path\To\File.txtskładni ... więc nawet programy korzystające CreateFileWze ścieżki C:\Path\To\File.txtmają problem. Trudno to opisać, ale nie trzeba dodawać, że największym powodem programów nieobsługujących wewnętrznie \\?\składni jest utrata możliwości korzystania ze ścieżek względnych (takich jak ścieżki ..\Documents\file.doc).

Jozuego
źródło
Westchnienie Tak, korzystałem z Eksploratora Windows. Wydaje mi się to dziwne, ponieważ zwykle byłem w stanie bez problemu tworzyć bardzo długie ścieżki do plików w systemie Windows XP (nigdy nie dostałem błędu długiej ścieżki w XP. Ani razu!). No cóż
Cameron
2
Tak, istnieją różne sposoby obejścia problemu, ale żaden z nich nie działa w 100%. Szczerze mówiąc, uważam, że jest to ogromny problem, ponieważ przechowujemy coraz więcej plików. Naprawdę mnie to rozumie, kiedy Word może zapisać się na długą ścieżkę, ale kiedy kopiujesz za pomocą Eksploratora, umiera z „Nazwa ścieżki jest za długa dla miejsca docelowego”
Joshua
Dzięki za „dziwaczne szczegóły”, są dla mnie bardzo interesujące (i nieco sensowne), ponieważ jestem programistą studenckim (tak naprawdę jeszcze nie korzystałem z Win32 API)
Cameron
Zabawne, ciągle mam ten błąd długiej ścieżki w XP / 2003.
surfasb
6

Polecenie SUBST zawarte w systemie Windows 7 umożliwi dostęp do dłuższej ścieżki za pomocą nowej litery dysku wirtualnego.

Kojarzy ścieżkę z literą dysku.

SUBST [dysk1: [ścieżka2:] ścieżka]

Napęd SUBST1: / D

dysk1: określa dysk wirtualny, do którego chcesz przypisać ścieżkę.

[drive2:] ścieżka Określa dysk fizyczny i ścieżkę, którą chcesz przypisać do dysku wirtualnego.

/ D Usuwa podstawiony (wirtualny) dysk.

Wpisz SUBST bez parametrów, aby wyświetlić listę bieżących dysków wirtualnych.

Mikrofon
źródło