Możliwa duplikat:
Jaka jest najdłuższa ścieżka pliku, którą Windows może obsłużyć?
Czy ktoś wie, czy można zwiększyć maksymalną długość ścieżki w systemie Windows 7 (64-bit)?
Możliwa duplikat:
Jaka jest najdłuższa ścieżka pliku, którą Windows może obsłużyć?
Czy ktoś wie, czy można zwiększyć maksymalną długość ścieżki w systemie Windows 7 (64-bit)?
Odpowiedzi:
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 CreateFileA
problem dotyczy zarówno programów 32-bitowych, jak i 64-bitowych.
EDYCJA: Geeky Szczegóły
Problem występuje tylko w CreateFileA
funkcji i CreateFileW
funkcji, 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.txt
składni ... więc nawet programy korzystające CreateFileW
ze ścieżki C:\Path\To\File.txt
mają 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
).
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.
Użyj punktu połączenia, aby uzyskać krótszą ścieżkę do dłuższej ścieżki.