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 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).
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.